1、数据库原理及应用电子实验报告题 目:SQL 语言 数据定义 日期姓 名实验环境:Windows 7,Sql Server2005实验目的:1熟悉 Sql Server2005环境2掌握基本表的定义、删除和修改3掌握索引的建立和删除实验内容:1. Sql Server2005的启动Sql Server2005的启动方法:单击“开始”按钮“所用程序” “Microsoft SOL Server 2005” “SQL Server Management Studio”。之后将会出现如图1所示的“连接到服务器”的窗口。安装时将 Sql Server2005 的快捷图标放到桌面或锁定到任务栏打开 Sql
2、 Server2005界面(如下图)单击连接,进入界面(如下图)点击新建查询 ,进入空白页面,编写程序。2. 定义基本表的语句格式1)create 语句SQL 语言使用 CREATE TABLE 语句定义基本表,其基本格式如下:CREATE TABLE ( , , );:所要定义的基本表的名字:组成该表的各个属性(列):涉及相应属性列的完整性约束条件:涉及一个或多个属性列的完整性约束条件 2)drop 语句当某个基本表不再需要时,可以使用 DROP TABLE 语句删除它。其一般格式为:DROP TABLE RESTRICT | CASCADE;基本表删除后:数据、表上的索引都删除表上的视图往
3、往仍然保留,但无法引用删除基本表时,系统会从数据字典中删去有关该基本表及其索引的描述。用 DROP 做删除操作时,是把整个表都删了,而用 delete 做删除操作时,是清空列表,使其为一个空表3)alter 语句SQL 语言用 ALTER TABLE 语句修改基本表,其一般格式为:ALTER TABLE ADD 完整性约束 DROP MODIFY ;:要修改的基本表ADD 子句:增加新列和新的完整性约束条件DROP 子句:删除指定的完整性约束条件MODIFY 子句:用于修改列名和数据类型3.基本表的定义、删除和修改1)基本表的定义(写出题目、sql 语句,阐述有哪些常用完整性约束,辨析 pri
4、mary 可以 和 unique 的区别)【实例1】建立一个“学生“表代码如下:CREATE TABLE Student (Sno CHAR(9)PRIMARY KEY,Sname CHAR(20)UNIQUE,Ssex CHAR (2),Sage SMALLINT,Sdept CHAR(20); 执行结果如下图所示:【实例2】建立一个“课程“表代码如下:CREATE TABLE Course(Cno CHAR(4)PRIMARY KEY,Cname CHAR(40),Ccredit SMALLINT,FOREIGN KEY Cpno REFERENCES Course(Cno); 执行结果如
5、下图所示:【实例3】建立一个“选课表“表代码如下:CREATE TABLE SC (Sno CHAR(9),Cno CHAR(4),Grade SMALLINT,PRIMARY KEY(Sno,Cno),PRIMARY KEY(Sno) REFERENCES Student (Sno),PRIMARY KEY(Cno) REFERENCES Course (Cno); 执行结果如下图所示:2)基本表的删除(写出题目、sql 语句)【实例4】删除 Student 表代码如下:DROP TABLE Student ;执行结果如下图所示:【实例5】删除 Course 表代码如下:DROP TABLE
6、 Course ;执行结果如下图所示:【实例6】删除 SC 表代码如下:DROP TABLE SC ;执行结果如下图所示:3)基本表的修改(写出题目、sql 语句【实例 7】向 Student 表增加“入学时间”列,其数据类型为日期型代码如下:ALTER TABLE Student ADD Scome DATETIME;执行结果如下图所示:【实例8】增加课程名称必须取唯一值的约束条件代码如下:ALTER TABLE Course ADD UNIQUE(Cname);执行结果如下图所示:【实例9】将年龄的数据类型有字符改为整数代码如下:ALTER TABLE Student ALTER CONM
7、U Sage INT;执行结果如下图所示:4 定义索引的语句1)create 语句(阐述唯一索引和聚簇索引的区别)语句格式:CREATE UNIQUE CLUSTER INDEX ON (, ); UNIQUE 表明此索引的每一个索引值只对应唯一的数据记录CLUSTER 表示要建立的索引是聚簇索引2)Drop 语句语句格式:Create cluster index stusname on student(sname)DROP INDEX ;删除索引时,系统会从数据字典中删去有关该索引的描述。5 索引的建立和删除1)索引的建立(写出题目、sql 语句)【实例10】在 Student 表的 Sname 列上建立一个聚簇索引代码如下:create index stusname on student (sname);执行结果如下图所示:2)索引的删除(写出题目、sql 语句)【实例11】删除 student 表的 stusname 索引。代码如下:Drop index stusname on student;执行结果如下图所示:完成情况:1 完成了基本表的建立和增、删、改操作2 完成了建立和删除索引出现的问题:(小四宋体)在完成基本表的建立和增、删、改操作任务时,遇到了代码没错但执行有误的情况,解决思路以模块为主,自行调整,顺利得到结果。