数据库表的创建、管理和数据操作(实验一)

2020-07-10 08:04:59易采站长站整理

sage smallint,
sdept CHAR (20) default ('计算机系'),
)

【例2】  创建一张名为Ta1的表,此表中有3列,第一列Pid定义为主键,并且自动增长。第二列Name默认值为Unknown,第三列定义一个约束(日期不能大于输入当天的日期),插入一条记录并进行查询,显示如下图。


CREATE TABLE ta1
(
pid int identity(1,1) primary key,
[name] CHAR(10) default ('unknow'),
birthday datetime CHECK( birthday <getdate() )
)

(二)表的修改
1.用企业管理器修改表
 (1)右键点击所要修改的学生表,选择“设计表”,会弹出如图3-4所示的窗体,在这个窗体中可以更改数据表的字段。在空白处点右键,选择“属性”,弹出另一窗体,在此可以更改约束,也可以增加约束。

2、利用Transact-SQL语句修改表
向表中添加新的字段:在学生表中添加一个“班级”字段,数据类型为字符型。
ALTER TABLE student  ADD class CHAR(6)

删除表中的旧列:将学生表中的“Sdept”字段删除。
ALTER TABLE student DROP COLUMN Sdept

更改表以添加具有约束的列。(sp_help:用于显示参数清单和其数据类型)
给学生表的增加“grade”字段并加上CHECK约束,让其不可以大于100。
ALTER TABLE student ADD grade int CONSTRAINT ch_grade CHECK(grade<100)
EXEC sp_help ch_grade

给学生表中添加“birthday”字段,并且这个日期不能在录入当天的日期之后。
ALTER TABLE student ADD birthday DATETIME NULL
CONSTRAINT ch_birthday CHECK(birthday<getdate())

添加具有默认值的可为空的列:
在学生表中加入“matriculationday”字段,并且这一字段的默认值为录入当天的日期。
ALTER TABLE  student ADD matriculationday smalldatetime NULL
CONSTRAINT adddateflt  DEFAULT getdate() 

请参考上面所给的例子:
自行设计表结构修改操作(不少于8个语句),并进行实验验证。
修改表student,结果如表1-4。
创建表1-5、表1-6,为后续实验建立基础。

(三)表的删除
可以在企业管理器中选择要删除的表直接删除,也可以通过Transact-SQL语句DROP 删除表的定义及表中的所有数据、索引、出发器、约束和权限规范。

相关文章 大家在看