"这是关于SQL和MySQL数据库的学习总结,主要涵盖了表与表之间的关系,数据库的基本概念,以及数据类型。此外,还提到了Oracle创建用户的方法和MySQL中的系统数据库与用户数据库的区别。"
在数据库设计中,表是数据组织的基础单元,它们具有固定的列数和任意的行数。数据库则是一些相关联表的集合,如MySQL中的系统数据库包括information_schema、performance_schema、mysql和sys,分别用于存储元数据、性能参数、用户权限信息和易理解的视图数据。用户数据库则根据项目需求创建,每个项目通常拥有独立的数据库。
表间的关系是数据库设计的关键,主要包括一对一、一对多和多对多三种类型。一对一关系意味着一张表的一条记录只能与另一张表的一条记录对应,例如员工信息与公民信息可以通过公民ID建立关联。一对多关系,如部门与员工,客户与订单,可以通过在从表中设置外键指向主表的主键实现。多对多关系,如学生与课程,需要通过中间表来关联,将原本的多对多转化为两个一对多关系。
数据类型在数据库设计中同样重要。MySQL支持的常见数据类型包括:double(浮点型)、char(固定长度字符串)、varchar(可变长度字符串)、text(大文本)、blob(二进制对象)、date(日期)、time(时间)和datetime(日期时间)。例如,double(5,2)表示最多5位数字,其中2位为小数。字符串和日期类型值需要用单引号包围。
在MySQL中,我们使用DDL(数据定义语言)来创建数据库对象,如库、表和列;DML(数据操作语言)用于处理表中的记录,如INSERT、UPDATE、DELETE等;DQL(数据查询语言)用于查询数据,如SELECT语句;而DCL(数据控制语言)则用于设置访问权限和安全级别。
Oracle创建用户时,可以使用`CREATE USER 用户名 IDENTIFIED BY 密码;`命令,并通过`GRANT`语句授予resource和connect权限。例如,`grant resource ,connect to 用户名;`。
理解SQL中的表关系、数据库结构、数据类型和SQL语句是有效管理和操作数据库的基础,对于开发和维护数据库系统至关重要。