SQL Server 数据表创建指南:主键、外键、约束和自动编号
SQL Server 数据表创建指南:主键、外键、约束和自动编号
本指南将演示如何在 SQL Server 中创建数据表,并设置主键、外键、唯一约束、默认值约束、检查约束以及使用自动编号的标识列。
我们将创建以下五个数据表来存储个人信息:
- personal_info: 存储基本信息,如姓名、性别、出生日期等。2. id_info: 存储身份证号码。3. phone_info: 存储电话号码。4. email_info: 存储电子邮件地址。5. gender_info: 存储性别信息。
1. 创建个人信息表 (personal_info)sqlCREATE TABLE personal_info ( id INT IDENTITY(1,1) PRIMARY KEY, name VARCHAR(50), gender VARCHAR(10), birthdate DATE, id_number VARCHAR(20), phone VARCHAR(20), email VARCHAR(50));
代码说明:
id INT IDENTITY(1,1) PRIMARY KEY: 创建名为 'id' 的列作为主键,数据类型为 INT,使用自动编号功能,从 1 开始递增。*name VARCHAR(50): 创建名为 'name' 的列,数据类型为 VARCHAR,最大长度为 50 个字符。* 其他列的创建方式类似,根据实际需求设置数据类型和长度。
2. 创建身份证信息表 (id_info)sqlCREATE TABLE id_info ( id INT IDENTITY(1,1) PRIMARY KEY, personal_id INT FOREIGN KEY REFERENCES personal_info(id), id_number VARCHAR(20) UNIQUE);
代码说明:
personal_id INT FOREIGN KEY REFERENCES personal_info(id): 创建名为 'personal_id' 的列作为外键,关联到personal_info表的 'id' 列。*id_number VARCHAR(20) UNIQUE: 创建名为 'id_number' 的列,数据类型为 VARCHAR,最大长度为 20 个字符,并设置唯一约束,确保每个身份证号码都是唯一的。
3. 创建电话信息表 (phone_info)sqlCREATE TABLE phone_info ( id INT IDENTITY(1,1) PRIMARY KEY, personal_id INT FOREIGN KEY REFERENCES personal_info(id), phone VARCHAR(20) UNIQUE);
代码说明:
- 与
id_info表类似,使用外键关联personal_info表,并对 'phone' 列设置唯一约束。
4. 创建邮箱信息表 (email_info)sqlCREATE TABLE email_info ( id INT IDENTITY(1,1) PRIMARY KEY, personal_id INT FOREIGN KEY REFERENCES personal_info(id), email VARCHAR(50) UNIQUE);
代码说明:
- 与
id_info表类似,使用外键关联personal_info表,并对 'email' 列设置唯一约束。
5. 创建性别信息表 (gender_info)sqlCREATE TABLE gender_info ( id INT IDENTITY(1,1) PRIMARY KEY, personal_id INT FOREIGN KEY REFERENCES personal_info(id), gender VARCHAR(10) CHECK (gender IN ('男', '女')));
代码说明:
gender VARCHAR(10) CHECK (gender IN ('男', '女')): 创建名为 'gender' 的列,数据类型为 VARCHAR,最大长度为 10 个字符,并设置检查约束,确保性别值只能为 '男' 或 '女'。
总结
本指南介绍了在 SQL Server 中创建数据表的基本方法,包括设置主键、外键、唯一约束、检查约束以及使用自动编号的标识列。你可以根据自己的实际需求修改和扩展这些示例,创建更复杂的数据库结构。
原文地址: https://www.cveoy.top/t/topic/fYsY 著作权归作者所有。请勿转载和采集!