您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 《数据库原理及应用》实验
《数据库原理及应用》实验姓名黄鸿波学号3100717208班别计本10-2数据库原理及应用(本科)实验指导书-计算机信息教研室-1桂林理工大学信息科学与工程学院二○一二年五月2目录实验1创建数据库与数据表……………………………………………………………2实验2简单查询和连接查询……………………………………………………………10实验3嵌套查询和集合查询……………………………………………………………12实验4数据完整性………………………………………………………………………143时间:机房号:得分:实验1创建数据库与数据表实验目的:1.熟悉SQLSERVER环境;2.掌握数据库和数据表的创建和删除,实践SQL的CREATE、ALTER和DROP命令;3.掌握数据表的创建和数据记录的插入方法。实验内容:1.创建教学管理“JXGL”数据库,并建立学生STUDENT、课程COURSE和选修SC三个数据表,各表中的数据如下所示:学生STUDENT:SnoSnameSsexSageSdept95001李勇M20CS95002刘晨F19IS95003王敏F18MA495004张立M18IS课程COURSE:CnoCnameCpnoCcredit1数据库542数学23信息系统144操作系统635数据结构746数据处理27C语言64选修SC:SnoCnoGrade950011929500128559500138895002290950023802.创建供应系统“GYXT”数据库,其中包括供应商表S、零件表P、工程项目表J和供应情况表SPJ四个数据表,各表中数据如下所示。供应商S:SNOSNAMECITYS1精益天津S2万胜北京S3东方北京S4丰泰隆上海S5康健南京零件P:PNOPNAMECOLORWEIGHTP1螺母红12P2螺栓绿17P3螺丝刀蓝146P4螺丝刀红14P5凸轮蓝40P6齿轮红30工程项目J:JNOJNAMECITYJ1三建北京J2一汽长春J3弹簧厂天津J4造船厂天津J5机车厂唐山J6无线电厂常州J7半导体厂南京供应情况SPJ:SNOPNOJNOQTYS1P1J1200S1P1J31007S1P1J4700S1P2J2100S2P3J1400S2P3J2200S2P3J4500S2P3J5400S2P5J1400S2P5J2100S3P1J1200S3P3J1200S4P5J1100S4P6J3300S4P6J4200S5P2J4100S5P3J1200S5P6J2200S5P6J4500实验步骤:1.创建教学管理“JXGL”数据库。(注:可8采用可视窗体和SQL命令两种方法创建。以下是SQL命令方法)(1)创建教学管理“JXGL”数据库。在命令窗格中输入如下命令,然后单击“运行”钮执行该命令。CREATEDATABASEJXGL;(2)清空命令窗格后,在JXGL数据库中建立STUDENT表,并插入记录,然后执行。CREATETABLESTUDENT(Snochar(5)notnullunique,Snamechar(20)notnullunique,Ssexchar(1),Sageint,Sdeptchar(20));INSERTINTOSTUDENTVALUES(‘95001’,’李勇’,’M’,20,’CS’);INSERTINTOSTUDENTVALUES(‘95002’,’刘晨’,’F’,19,’IS’);INSERTINTOSTUDENT9VALUES(‘95003’,’王敏’,’F’,18,’MA’);INSERTINTOSTUDENTVALUES(‘95004’,’张立’,’M’,18,’IS’);(3)清空查询窗格后,JXGL数据库中建立COURSE表,并插入记录,然后执行。CREATETABLECOURSE(Cnochar(2)notnullPRIMARYKEY(Cno),Cnamechar(20),Cpnochar(2),Ccreditsmallint);INSERTINTOCOURSEVALUES(‘1’,’数据库’,’5’,4);INSERTINTOCOURSEVALUES(‘2’,’数学’,’’,2);INSERTINTOCOURSEVALUES(‘3’,’信息系统’,’1’,4);INSERTINTOCOURSEVALUES(‘4’,’操作系统’,’6’,3);10INSERTINTOCOURSEVALUES(‘5’,’数据结构’,’7’,4);INSERTINTOCOURSEVALUES(‘6’,’数据处理’,’’,2);INSERTINTOCOURSEVALUES(‘7’,’C语言’,’6’,4);(4)清空查询窗格后,JXGL数据库中建立SC表,并插入记录,然后执行。CREATETABLESC(Snochar(5)notnull,Cnochar(2)notnull,Gradesmallint,PRIMARYKEY(Sno,Cno),FOREIGNKEY(Sno)REFERENCESSTUDENT(Sno),FOREIGNKEY(Cno)REFERENCESCOURSE(Cno));INSERTINTOSCVALUES(‘95001’,‘1’,92);11INSERTINTOSCVALUES(‘95001’,‘2’,85);INSERTINTOSCVALUES(‘95001’,‘3’,88);INSERTINTOSCVALUES(‘95002’,‘2’,90);INSERTINTOSCVALUES(‘95002’,‘3’,80);(5)查看三个表中的内容。分别执行以下命令,查看STUDENT、COURSE和SC数据表中的内容。SELECT*FROMSTUDENT;SELECT*FROMCOURSE;SELECT*FROMSC;(6)ALTERTABLE、DROPTABLE、DROPDATABASE命令运用。①向STUDENT表增加“入学时间”列,其数据类型为日期型,用SELECT命令查看表中内容。12ALTERTABLESTUDENTADDSCOMEDATETIME;SELECT*FROMSTUDENT;②删除“入学时间”列,再用SELECT命令查看表中内容。ALTERTABLESTUDENTDROPCOLUMNSCOME;SELECT*FROMSTUDENT;③删除数据表。DROPTABLESC;DROPTABLESTUDENT;DROPTABLECOURSE;④删除数据库命令。切换到其他任意数据库,然后可用如下命令删除JXGL数据库。DROPDATABASEJXGL;重复(1)~(4)过程,建立数据库备以后的查询使用。2.创建供应系统“GYXT”数据库。(注:可13采用可视窗体和SQL命令两种方法创建。)下面写出实现如下操作的SQL语句:(1)创建供应系统“GYXT”数据库。CREATEDATABASEGYXT;(2)建立供应商表S。CREATETABLES(SNOCHAR(5)PRIMARYKEY,SNAMECHAR(6)NOTNULL,CITYCHAR(10)NOTNULL);(3)建立零件表P。CREATETABLEP(PNOCHAR(2)PRIMARYKEY,PNAMECHAR(6)NOTNULL,COLORCHAR(2)DEFAULT('红'),WEIGHTINT,);(4)建立工程项目表J。CREATETABLEJ(JNOCHAR(5)PRIMARYKEY,JNAMECHAR(10)NOTNULL,CITYCHAR(10)NOTNULL););*/CREATETABLESPJ(5)建立供应情况表SPJ。14CREATETABLESPJ(SNOchar(5)notnull,PNOchar(2)notnull,JNOchar(5)notnull,QTYint,PRIMARYKEY(SNO,PNO,JNO),FOREIGNKEY(SNO)REFERENCESS(SNO),FOREIGNKEY(PNO)REFERENCESP(PNO),FOREIGNKEY(JNO)REFERENCESJ(JNO),);(6)应用INSERTINTO命令将相应数据写入到供应商表S、零件表P、工程项目表J和供应情况表SPJ四个数据表。INSERTINTOSVALUES('S1','精益','天津');INSERTINTOSVALUES('S2','万胜','北京');INSERTINTOSVALUES('S3','东方','北京');INSERTINTOSVALUES('S4','丰泰隆','上海');INSERTINTOSVALUES('S5','南京','南京');*/INSERTINTOPVALUES('P1','螺母','红','12');INSERTINTOPVALUES('P2','螺栓','绿','17');INSERTINTOPVALUES('P3','螺丝刀','蓝','14');INSERTINTOPVALUES('P4','螺丝刀','红','14');INSERTINTOPVALUES('P5','凸轮','蓝','40');INSERTINTOPVALUES('P6','齿轮','红','30');INSERTINTOJVALUES('J1','三建','北京');INSERTINTOJVALUES('J2','一汽','长春');INSERTINTOJVALUES('J3','弹簧厂','天津');INSERTINTOJVALUES('J4','造船厂','天津');INSERTINTOJVALUES('J5','机车厂','唐山');INSERTINTOJVALUES('J6','无线电厂','常州');INSERTINTOJVALUES('J7','半导体厂','南京'INSERTINTOSPJVALUES('S1','P1','J1','200');INSERTINTOSPJVALUES('S1','P1','J3','100');INSERTINTOSPJVALUES('S1','P1','J4','700');INSERTINTOSPJVALUES('S1','P2','J2','100');15INSERTINTOSPJVALUES('S2','P3','J1','400');INSERTINTOSPJVALUES('S2','P3','J2','200');INSERTINTOSPJVALUES('S2','P3','J4','500');INSERTINTOSPJVALUES('S2','P3','J5','400');INSERTINTOSPJVALUES('S2','P5','J1','400');INSERTINTOSPJVALUES('S2','P5','J2','100');INSERTINTOSPJVALUES('S3','P1','J1','200');INSERTINTOSPJVALUES('S3','P3','J1','200');INSERTINTOSPJVALUES('S4','P5','J1','100');INSERTINTOSPJVALUES('S4','P6','J3','300');INSERTINTOSPJVALUES('S4','P6','J4','200');INSERTINTOSPJVALUES('S5','P2','J4','100');INSERTINTOSPJVALUES('S5','P3','J1','200');INSERTINTOSPJVALUES('S5','P6','J2','200');INSERTINTOSPJVALUES('S5','P6','J4','500');16时间:机房号:得分:实验2简单查询和连接查询实验目的:1.熟练掌握SQLServer查询分析器的使用方法,加深对标准SQL查询语句的理解。2.熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。实验内容:1.基于实验一
本文标题:《数据库原理及应用》实验
链接地址:https://www.777doc.com/doc-6183873 .html