1、CREATE TABLEdatabase_name_owner. table_name(|column_name AS computed_column_expression|,n)ON filegroup | DEFAULTTEXTIMAGE_ON filegroup | DEFAULT:=column_name date_typeDEFAULT constant_ expression|IDENTITY (seed, increment)ROWGUIDCOLcolumn_ constraint ,n例1 创建一个表名为student的表USE testcreate table student
2、sno char (5) NOT NULL,sname char(8) NULL,sex char(2) NULL,sbirth smalldatetime NULl,sdept char(20) NULL首先创建数据库 testCREATE DATABASE testON PRIMARY(NAME=student1_dat,FILENAME=e:jsj1teststudent1_dat.mdf,SIZE=10,MAXSIZE=50,FILEGROWTH=20%)LOG ON(NAME=student_log,jsj1teststudent1_log.ldfSIZE=5MB,MAXSIZE=2
3、5MB,FILEGROWTH=5MB)例2 创建一个名为tal的表,此表中有3列,第一列 pid定义为主键,并且自动增长。第2列name默认值为Unknown,第3列定义一个约束(日期不能大于输入当天的日期),插入一条记录并进行查询:create table talpid int identity(1,1) primary key,name char(10) DEFAULT(unknow),birthday DATETIME CHECK (birthdaygetdate()insert tal (name,birthday) values (lam,1977-03-20select * fro
4、m tal2) 利用Transact_SQL语句修改表使用Transact_SQL语句可以在更大范围内修改表格的定义,可以修改的内容包括:修改、增加、删除列或约束,使约束和触发器无效等使用Transact_SQL修改表格定义的语法如下:ALTER TABLE tableALTER COLUMN column_namenew_date_type NULL|NOT NULL|ADD|DROPROWGUIDCOL|ADDTABLE_CONSTRAINT,N|DROPCONSTRAINT constraint_name|COLUMN column|CHECK|NOCHECKCONSTRAINTALL|
5、constraint_name,n|ENABLE|DISABLETRIGGERALL|trigger_name,n例3 使用Transact_SQL语句对学生表进行各种修改(1)向表中添加新的字段:在学生表中添加一个“班级”字段,数据类型为字符型。 ALTER TABLE student add 班级 char(2)删除表中的旧列:将学生表中“Sdept”字段删除。 ALTER TABLE student DROP column Sdept(3)更改表以添加具有约束的列 给学生表增加“grade”字段并加上CHECK约束,让其不大于100。ALTER TABLE student ADD gra
6、de intConstraint chname check(grade100)Exec sp_help chname给学生表添加“birthday”字段,并且这个日期不能在录入当天的日期后。ALTER TABLE student ADD birthday DATETIME NULLConstraint ch_birthday check(birthday=0 and 平时成绩2000)3.4 使用Transact-SQL命令创建索引3.4.1 在“学生档案表”的“姓名”字段上建立普通升序索引;3.4.2 在“学生档案表”的“学号”字段上建立唯一索引;3.4.3 在“学生档案表”的“学号”(升序
7、)、“姓名”(升序)、和“籍贯”(降序)三个字段上建立普通索引;3.4.4 在“学生成绩表”的“学号”字段上建立聚集索引;3.4.5 在“教学任务表”的“任课教师ID”字段上创建名为“任课教师ID索引”的唯一索引;在“教师档案表”中的“教师ID”(降序)、“姓名”(升序)、“职称”(升序)三个字段上建立一个普通索引。create index 姓名索引 on 学生档案(姓名)create unique index 学号索引 on 学生档案(学号)create index 多列索引 on 学生档案(学号,姓名,籍贯 desc)create clustered index 学号索引 on 学生成绩表(学号)create unique index 任课教师ID索引 on 教学任务表(任课教师ID)create index 多列索引1 on 教师档案表(教师ID desc,姓名,职称) 结果:如图所示3.5 使用SQL企业管理器创建索引3.5.1 使用SQL企业管理器在“学生档案表”中的“籍贯”字段上创建普通升序索引。3.5.2 使用SQL企业管理器在“课程信息表”上创建“课程ID”唯一索引。3.6 创建数据库表之间的关系图 创建上述6张表之间的关系图。一、完成拓展实验二、4思考与总结
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1