2023年数据库系统原理实验一参考超详细解析超详细解析答案.pdf
数据库系统原理实验一参考答案 姓名:专业:班级:学号:科目:数据库系统原理 实验日期:实验题目:实验 1 SQL SERVER 的安装及使用,数据库的建立 【实验目的】安装并熟悉 SQL SERVER 2008 环境,通过实验达到能熟练使用“管理器”及“命令窗口”两种方法,建立数据库及数据库表(表结构与表内容)。重点注意数据类型及完整性约束(要求作验证)。使用的 SQL 命令:CREATE DATABASE,USE,CREATE TABLE,INSERT等。【实验内容】1、课本第一章的例题(学生数据库(Students_Mis_2018):4 个数据表)(1)建立数据库(CREATE DATABASE):Students_Mis_2018(存储文件存放在自己建立的文件夹内)(2)调用(USE)数据库:Students_Mis_2018(3)分别建立 4 个数据表的表结构(CREATE TABLE):系(Depts),学生(Students),课程(Courses),选课(Reports)(4)插入表数据(INSERT)(5)数据类型及完整性约束验证(难点就是主外键约束)回答以下几个问题:(A)若先建立学生(Students)表,后建立系(Depts)表,行不?为什么?(B)若先建立选课(Reports)表,后建立课程(Courses)表,行不?为什么?(C)对 INSERT,自己举几个违反约束条件(数据类型、主键约束、非空约束、外键约束、CHECK约束)的例子,并说明理由。(6)分离数据库、复制数据库存储文件、附加数据库(7)将调试好的正确命令代码及数据库存储文件保存到自己的备份盘(方便下次实验使用)2、课本中的习题 1、3(零件供应数据库(SPJ_Mis_2018):4个数据表)(说明:要求同上,各表模拟数据可参照课本 P110)【实验过程】1、(1)建立数据库(CREATE DATABASE):Students_Mis_2018 USE master GO CREATE DATABASE Students_Mis_2018 ON(NAME=Students_Data,=E:SQL_DATEBASEStudents_Mis_data、mdf,SIZE=10,MAXSIZE=50,=5 数据库系统原理实验一参考答案)LOG ON (NAME=Students_Log,=E:SQL_DATEBASE Students_Mis_log、ldf,SIZE=5MB,MAXSIZE=25MB,=5MB)GO (2)调用(USE)数据库:Students_Mis_2018 use Students_Mis_2018 GO(3)分别建立 4 个数据表的表结构(CREATE TABLE):系(Depts),学生(Students),课程(Courses),选课(Reports)CREATE TABLE Depts(Dno CHAR(5)PRIMARY KEY,Dname CHAR(20)NOT NULL )GO 构与表内容重点注意数据类型及完整性约束要求作验证使用的命令等实验内容课本第一章的例题学生数据库个数据表据数据类型及完整性约束验证难点就是主外键约束回答以下几个问题若先建立学生表后建立系表行不为什么若先建立理由分离数据库复制数据库存储文件附加数据库将调试好的正确命令代码及数据库存储文件保存到自己的备份盘方便数据库系统原理实验一参考答案 CREATE TABLE Students(Sno CHAR(5)PRIMARY KEY,Sname CHAR(20)NOT NULL,Ssex CHAR(2),Sage INT,Dno CHAR(5),CONSTRAINT FK_Dno FOREIGN KEY(Dno)REFERENCES Depts)GO CREATE TABLE Courses(Cno CHAR(6)PRIMARY KEY,Cname CHAR(20),Pre_Cno CHAR(6),Credits INT)GO 构与表内容重点注意数据类型及完整性约束要求作验证使用的命令等实验内容课本第一章的例题学生数据库个数据表据数据类型及完整性约束验证难点就是主外键约束回答以下几个问题若先建立学生表后建立系表行不为什么若先建立理由分离数据库复制数据库存储文件附加数据库将调试好的正确命令代码及数据库存储文件保存到自己的备份盘方便数据库系统原理实验一参考答案 CREATE TABLE Reports(Sno CHAR(5),Cno CHAR(6),Grade INT CHECK(Grade=0 AND Grade=0 AND Grade=0),PRIMARY KEY(Sno,Pno,Jno),CONSTRAINT S_SPJ FOREIGN KEY(Sno)REFERENCES S,CONSTRAINT P_SPJ FOREIGN KEY(Pno)REFERENCES P,CONSTRAINT J_SPJ FOREIGN KEY(Jno)REFERENCES J)GO (4)插入数据 构与表内容重点注意数据类型及完整性约束要求作验证使用的命令等实验内容课本第一章的例题学生数据库个数据表据数据类型及完整性约束验证难点就是主外键约束回答以下几个问题若先建立学生表后建立系表行不为什么若先建立理由分离数据库复制数据库存储文件附加数据库将调试好的正确命令代码及数据库存储文件保存到自己的备份盘方便数据库系统原理实验一参考答案 INSERT INTO S VALUES(S1,利群,30,广州),(S2,同方,20,杭州),(S3,天远,60,北京),(S4,精诚,10,上海),(S5,华缘,80,重庆),(S6,弘治,50,太原)SELECT *FROM S INSERT INTO P VALUES(P1,钉子,绿,34),(P2,螺丝,蓝,25),(P3,螺母,橙,12),(P4,螺栓,紫,27),(P5,螺钉,红,53),(P6,齿轮,绿,17),(P7,传送带,红,28)SELECT *FROM P INSERT INTO J VALUES(J1,一建,济南),(J2,三汽,广州),(J3,拉链厂,杭州),(J4,无线电厂,北京),(J5,机床厂,上海),(J6,螺钉厂,重庆),(J7,机械厂,天津)SELECT *构与表内容重点注意数据类型及完整性约束要求作验证使用的命令等实验内容课本第一章的例题学生数据库个数据表据数据类型及完整性约束验证难点就是主外键约束回答以下几个问题若先建立学生表后建立系表行不为什么若先建立理由分离数据库复制数据库存储文件附加数据库将调试好的正确命令代码及数据库存储文件保存到自己的备份盘方便数据库系统原理实验一参考答案 FROM J INSERT INTO SPJ VALUES(S1,P1,j3,340),(S1,P1,j2,250),(S1,P2,j5,120),(S1,P2,j6,270),(S1,P2,j7,530)INSERT INTO SPJ VALUES(S2,P2,j1,170),(S2,P3,j2,280),(S2,P4,j3,100),(S2,P4,j4,120),(S2,P5,j7,310),(S2,P5,j5,560),(S2,P6,j6,200)INSERT INTO SPJ VALUES(S3,P7,j1,300),(S3,P1,j1,400),(S4,P3,j2,410),(S4,P4,j3,330),(S4,P4,j4,650),(S4,P5,j4,150)INSERT INTO SPJ VALUES(S5,P7,j5,230),(S5,P7,j7,280),(S6,P2,j2,350),(S6,P2,j3,420),(S6,P6,j1,310)SELECT *FROM SPJ 构与表内容重点注意数据类型及完整性约束要求作验证使用的命令等实验内容课本第一章的例题学生数据库个数据表据数据类型及完整性约束验证难点就是主外键约束回答以下几个问题若先建立学生表后建立系表行不为什么若先建立理由分离数据库复制数据库存储文件附加数据库将调试好的正确命令代码及数据库存储文件保存到自己的备份盘方便数据库系统原理实验一参考答案 【实验结果及分析】【教师评语与成绩】成绩:指导教师:日期:构与表内容重点注意数据类型及完整性约束要求作验证使用的命令等实验内容课本第一章的例题学生数据库个数据表据数据类型及完整性约束验证难点就是主外键约束回答以下几个问题若先建立学生表后建立系表行不为什么若先建立理由分离数据库复制数据库存储文件附加数据库将调试好的正确命令代码及数据库存储文件保存到自己的备份盘方便