### 创建数据库、表、约束 #### 一、创建数据库与基本概念 根据题目描述,我们了解到本次操作的目标是在MySQL环境下创建一个名为`company`的数据库,并在该数据库中创建两个表:`offices` 和 `employees`。在进行实际操作之前,我们需要对涉及到的一些基础概念有所了解: - **数据库(Database)**:数据库是一系列组织起来的数据集合,用于存储和管理数据。 - **表(Table)**:表是数据库中的主要组成部分之一,由行和列组成,用于存储具体的数据记录。 - **约束(Constraints)**:约束是用于确保数据库中数据完整性的一组规则。常见的约束包括: - **主键(Primary Key)**:唯一标识表中的每一行记录,且不允许为空。 - **非空(Not Null)**:确保指定的列不能包含空值。 - **唯一(Unique)**:确保指定的列或列组合中的值都是唯一的。 - **外键(Foreign Key)**:用于建立两个表之间的关联,确保引用的完整性。 #### 二、创建数据库 接下来,我们将按照题目描述的要求创建数据库`company`。 ```sql CREATE DATABASE company; ``` 执行以上SQL语句后,数据库`company`即被成功创建。通过查询结果可以确认创建操作已完成。 #### 三、创建表offices 表`offices`的结构如表6-5所示,包括以下字段: - **officeCode**:整型,长度为10,作为主键,不可为空,且值唯一; - **city**:字符串型,长度为50,不可为空; - **address**:字符串型,长度为50,不可为空; - **country**:字符串型,长度为50,不可为空; - **postalCode**:字符串型,长度为25,不可为空。 根据这些信息,我们可以编写如下SQL语句来创建表`offices`: ```sql CREATE TABLE offices( officeCode INT(10) NOT NULL UNIQUE, city VARCHAR(50) NOT NULL, address VARCHAR(50) NOT NULL, country VARCHAR(50) NOT NULL, postalCode VARCHAR(25) NOT NULL, PRIMARY KEY (officeCode) ); ``` #### 四、验证表的存在 为了验证表`offices`已成功创建,可以使用`SHOW TABLES`命令来显示当前数据库中的所有表。 ```sql USE company; SHOW TABLES; ``` 此时应该可以看到`offices`表已被正确创建。 #### 五、创建表employees 表`employees`的结构如表6-6所示,其包含了以下字段: - **employeeNumber**:整型,长度为11,作为主键,不可为空,自增长; - **lastName**:字符串型,长度为50,不可为空; - **firstName**:字符串型,长度为50,不可为空; - **mobile**:字符串型,长度为25,不可为空; - **officeCode**:整型,长度为10,不可为空,作为外键,引用表`offices`的`officeCode`; - **jobTitle**:字符串型,长度为50,不可为空; - **birth**:日期时间型; - **note**:字符串型,长度为255; - **sex**:字符串型,长度为5。 根据这些信息,创建表`employees`的SQL语句如下: ```sql CREATE TABLE employees( employeeNumber INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT, lastName VARCHAR(50) NOT NULL, firstName VARCHAR(50) NOT NULL, mobile VARCHAR(25) NOT NULL, officeCode INT(10) NOT NULL, jobTitle VARCHAR(50) NOT NULL, birth DATETIME, note VARCHAR(255), sex VARCHAR(5), CONSTRAINT office_fk FOREIGN KEY (officeCode) REFERENCES offices(officeCode) ); ``` #### 六、再次验证表的存在 同样地,我们可以通过`SHOW TABLES`命令来确认表`employees`也被成功创建。 ```sql SHOW TABLES; ``` 此时,可以看到`employees`和`offices`两个表都已存在于数据库`company`中。 #### 七、检查表结构 为了进一步确认表的结构是否符合要求,我们可以使用`DESCRIBE`命令来查看表的具体结构。 ```sql DESCRIBE offices; DESCRIBE employees; ``` 通过上述命令,我们可以详细地看到每个表中各字段的信息,包括字段名称、数据类型、是否允许为空等属性,从而确保表的结构符合预期。 通过以上步骤,我们不仅创建了一个数据库`company`以及其中的两张表`offices`和`employees`,还详细地定义了各个字段的属性和约束条件,确保了数据的一致性和完整性。这对于实际应用中的数据管理和维护具有重要的意义。
- 粉丝: 4
- 资源: 7
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助