1 实验目的
(1)掌握SQL的数据定义功能:
熟悉SQL Server的操作界面及主要组件;
掌握使用SQL语言创建数据库、表、索引和修改表结构。
(2)掌握SQL语言对数据库完整性的支持:
掌握约束、规则、默认的使用方法;
掌握参照完整性设置的方法;
掌握用企业管理器创建和SQL创建、修改的方法;
2 实验任务
1、建立一个数据库XSCJ,自行规定数据文件和日志文件各项参数。
2、参照课本56页建立Course表,并录入数据库表中相应元组。
3、修改Course表增加一列,开课学期,数据类型自行定义。
4、为Course表的Cname列建立一个唯一索引,索引名Cname_idx。
5、删除唯一索引Cname_idx。
6、删除基本表Student。
7、删除数据库XSCJ
拓展练习:
1、创建创建一个名为BSXT的数据库,其初始大小为5MB,最大大小10MB,允许数据库自动增长,增长方式是按10%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。
2、将以上BSXT数据库的主数据文件的最大大小改为不限制。
3、在TSGL系统中建立表1至表3共张表,要求采用T-SQL提供的六种约束创建三张表的实体完整性、参照完整性和用户定义的完整性定义。
3 相关知识
关系数据库三级模式结构,其模式、外模式和内模式中的基本对象有模式、表、视图和索引等,因此SQL的数据定义功能包括模式定义、表定义、视图和索引的定义。
SQL标准不提供修改模式定义和修改视图定义的操作。用户如果想修改这些对象,只能先将它们删除然后再重建一个。一个关系数据库管理系统的实例中可以建立多个数据库,一个数据库中可以建立多个模式,一个模式下通常包括多个表、视图和索引等数据库对象。
SQL语言使用CREATE TABLE语句定义基本表,基本格式:
CREATE TABLE <表名>
(<列名><数据类型>[列级完整性约束条件],
[<列名><数据类型>[列级完整性约束条件]]……[,<表级完整性约束条件>]);
建表的同时通常还可以定义与该表有关的完整性约束条件。这些完整性约束条件被存入系统的数据字典中,当用户操作表中数据时由关系数据库管理系统自动检查该操作是否违背这些完整性约束条件。如果完整性条件约束涉及该表的多个属性列,则必须定义在表级上,否则既可以定义在列级也可以定义在表级。
随着应用环境和应用需求的变化,有时需要修改已建立好的基本表。SQL语言用ALTER TABLE语句修改基本表;当某个表不再需要时,可以使用DROP TABLE语句删除它,其一般格式为:DROP TABLE <表名>[RESTRICT|CASCADE];
4 实验内容与实验结果
ALTER TABLE Student ADD term char(2)
CREATE UNIQUE INDEX Cname_idx ON Course(Cname);DROP INDEX Cname_idx
DROP TABLE Student
DROP DATEBASE XSCJ