一、前言
本文将争对有关数据表相关操作进行讲解
二、自定义数据类型
1.直接创建
1️⃣题目
打开数据库School1:
要求使用Microsoft SQL Server Management Studio方法分别创建自定义数据类型myID为char(8),不允许为空;自定义数据类型myName1为Nvarchar(10),不允许为空;
2️⃣操作步骤
1.按照如下图所示,右键点击“用户定义数据类型”,选择“新建…”
2.按照要求填入名称、数据类型以及长度
3.添加成功
2. 使用T-SQL命令创建
1️⃣题目
使用T-SQL命令方法创建自定义数据类型myName2为Nvarchar(20),不允许为空;自定义数据类型myDept为char(50),允许为空。(提示:CREATE TYPE…FROM命令)
2️⃣操作步骤
1.点击“新建查询”,输入语句
CREATE TYPE myName2 FROM Nvarchar(20) NOT NULL CREATE TYPE myDept FROM char(50)
2.点击执行
3.右键点击服务器后刷新
4.创建成功
三、 数据表的创建
1.直接创建表
1️⃣题目
(1)使用Microsoft SQL Server Management Studio在School1数据库中建立TInfo表,该表的表结构见表2-1
表2-1 TInfo表结构
列名 | 数据类型 | 长度 | 备注 |
Tid | myID | 设为关键字 | |
Tname | varchar | 10 | 不能为空 |
Sex | char | 2 | 其值只能为“男”或“女”,默认为“男” |
Dept | varchar | 30 | 允许为空 |
Tbirthday | smalldatetime | 允许为空 | |
Ttitle | varchar | 10 | 允许为空 |
Tphone | char | 11 | 允许为空 |
2️⃣操作步骤
1.右键点击表,选择新建表
2.右键Tid格,设置主键
3.选择数据类型
4.右键点击Sex栏,选择约束
5.添加约束
6.设置默认值
7.保存表
8.给表起名,并保存在D:/DataA目录下
9.完成新建表操作
2.使用T-SQL建表
1️⃣题目
使用T-SQL命令在School1数据库中创建表SInfo。
表2-2 SInfo表结构
列名 | 数据类型 | 长度 | 备注 |
SID | myID | 设为关键字 | |
Sname | myName1 | 不能为空 | |
Sex | char | 2 | 其值只能为“男”或“女”,默认为“男” |
Birthday | smalldatetime | 允许为空 | |
Dept | myDept | 允许为空 | |
Major | varchar | 30 | 允许为空 |
Class | varchar | 18 | 允许为空 |
IDCardNo | char | 18 | 不允许为空 |
2️⃣操作步骤
1.选择School1数据库后新建查询,输入语句
CREATE TABLE SInfo( SID myID PRIMARY KEY, SName myName1 NOT NULL, Sex char(2) DEFAULT('男') CHECK(Sex in('男','女')), Birthday smalldatetime, Dept myDept, Major varchar(30), Class varchar(18), IDCardNo char(18) NOT NULL, );
2.点击执行
3.右键点击服务器后刷新
4.创建成功
3.使用T-SQL命令添加外键约束
1️⃣题目
使用T-SQL命令在School1数据库中创建表CInfo 和ScoreInfo,表结构分别如下表所示
2️⃣操作步骤
1.修改可用数据库为School1后点击新建查询并输入语句
CREATE TABLE ScoreInfo( CID myID PRIMARY KEY , Cname myName2 NOT NULL, CCradit tinyInt NULL, CProperty varchar(10), );
2.点击执行
3.右键点击服务器后刷新
4.新建成功
5.保存表
同理,创建ScoreInfo表
四、数据表的修改
1.添加数据
1️⃣题目
用T-SQL命令语句修改表结构:
修改表SInfo表的表结构,设置IDCardNo值为惟一的。
2️⃣操作步骤
1.修改可用数据库为School1后点击新建查询并输入语句
2.点击执行
3.查看操作是否成功
2.修改默认值
1️⃣题目
修改ScoreInfo表结构,设置term值只能为1或2,默认值为1
2️⃣操作步骤
1.修改可用数据库为School1后点击新建查询并输入语句
ALTER TABLE ScoreInfo ADD DEFAULT 1 FOR term ALTER TABLE ScoreInfo ADD CHECK(term=1 or term=2)
2.点击执行
3.查看操作是否成功
3.添加带约束条件的字段
1️⃣题目
在表SInfo中添加一字段EntroData(即入学日期),要求该输入范围在1900-1-1至2079-1-1之间
2️⃣操作步骤
添加字段
1.修改可用数据库为School1后点击新建查询并输入语句
ALTER TABLE SInfo ADD EntroData DATE
2.点击执行
增加范围约束
1.修改可用数据库为School1后点击新建查询并输入语句
ALTER TABLE SInfo ADD CHECK( EntroData between cast('1900-1-1' as datetime) and cast('2079-1-1' as datetime))
2.点击执行
查看操作是否成功
1.右键点击SInfo表,并选择设计
2.右键点击EntroData,选择CHECK约束
3.选中表达式这一行,出现红框内图标后点击图标
4.删除字段
1️⃣题目
修改表TInfo的表结构,要求删除其中的TBirthday字段
2️⃣操作步骤
修改可用数据库为School1后点击新建查询并输入语句
ALTER TABLE TInfo DROP column TBirthday
2.点击执行
3.查看操作是否成功
五、结语
如果有任何问题或者错误欢迎在评论区留言,本专栏将持续更新