1、北京联合大学内部讲义数据库应用技术实验指导书北京联合大学自动化学院信息自动化教研部2023年9月实验一 创建数据库一、目的1注册SQL Server服务器。2了解MS SQL Server环境及包含组件。3掌握创建数据库的T-SQL命令。二、内容1进入Windows 2023,点击“开始”“程序” Microsoft SQL Server 2023 服务管理器,打开SQL Server 服务管理器。2通过点击、按钮分别启动、暂停、停止SQL Server服务,观测Windows 状态栏中有关SQL Server服务图标状态,见图1-1。图1-1 SQL Server服务图标3点击“开始”“程序
2、” Microsoft SQL Server 2023 公司管理器,打开SQL Server 公司管理器,观测窗口中菜单栏的重要项目、功能。4在公司管理器中查看SQL Server 2023有哪些组件。5点击数据库对象前“+”号,查看“数据库”的构成,见图1-2。展开+号图1-2 公司管理器6点击“开始”“程序” Microsoft SQL Server 2023 联机丛书,进入帮助系统,熟悉帮助系统的使用。7打开“我的电脑”或“资源管理器”在磁盘空间以自己的姓名或学号建立文献夹。8点击“开始”“程序” Microsoft SQL Server 2023 查询分析器,在图1-3所示的连接到SQ
3、L Server窗口中,选择“windows 身份验证”单选项,并点击“拟定”按钮,打开SQL Server 查询分析器。图1-3 连接到SQL Server窗口9在图1-4所示查询分析器的右半部分空白窗口中输入Create Database 命令,建立数据库,数据库文献存储在环节7建立的文献夹下,数据库名自由定义,主数据库文献大小2MB,以10%的速度增长,日记文献大小1MB,以1MB速度增长。命令输入完毕后,点击工具栏中执行按钮运营命令,记录执行结果。执行按钮图1-4 SQL 查询分析器三、学时2学时四、思考题1安装MS SQL Server的软硬件规定是什么?2简述数据库的组成。实验二
4、表的操作一、目的1创建及修改表。2掌握约束建立方法。二、内容用查询分析器在已建立的数据库中建立如下数据表。1 使用create table语句建立student表(不涉及约束)。student表属性名数据类型可否为空含义SnoChar(7)否学号(主键)SnameVarchar(20)否学生姓名SsexChar(2)否性别(男或女,默认为男)SageSmallint可年龄ClnoChar(5)否学生所在班级(外键)2使用create table语句建立course表、class表和grade表(涉及约束)。course表属性名数据类型可否为空含义CnoChar(1)否课程号(主键)CnameV
5、archar(20)否课程名称CreditSmallint可学分class表属性名数据类型可否为空含义ClnoChar(5)否班级号(主键)SpecialityVarchar(20)否班级所在专业InyearChar(4)否入校年份NumberInteger可班级人数(大于等于1,小于等于240)MonitorChar(7)可班长学号grade表属性名数据类型可否为空含义SnoChar(7)否学号(外键)CnoChar(1)否课程号(外键)GmarkDecimal(4,1)可成绩(大于等于0,小于等于100)3为grade表建立主键约束。4使用Alter table语句增长student表的约
6、束。5给student表增长一个属性Nation(民族),数据类型Varchar(20)。6删除student表中属性Nation。三、学时2学时四、思考题建立student表、course表、class表和grade表中的约束时有顺序规定吗?实验三 数据的检索一、目的1掌握SELECT FROM WHERE 语句结构及使用。2掌握各种查询。3学习连接查询的方法。二、内容1. 打开Pubs数据库。2. 在authors表中检索居住在OaklAND城市的作者姓名,并显示他们所在的城市名。3. 在authors表中找出住在CA州的姓White的作者名,并显示他们的州名。4. 在authors表中找
7、出编号第五六位是80的作者的姓名,并显示他们的作者编号。5. 在titles表中检索出书价大于15元的书名及其价格。6. 在titles表中显示包含computer字样的书名。7. 在titles表中找出1994年后出版的书,并显示其价格、出版日期和书名。8. 在titles表中显示价格大于20元的书名及其价格,其中价格以降序方式显示,书名以升序方式显示。9. 求出minit不等于A,job_id的数值不大于8的职工所在pub_id和minit。 10. 查找出出版社所在city不是以y结尾的城市名。11. 查出作者所在城市为oakland的 zip 号,并按降序排列。12. 写出 job_l
8、vl 在100与200之间的人名。13. 记录authors表中的作者总数,并以authors表的记录总数为标题显示出来。14. 在titles表中求1991年后出版的书的平均价格,以平均数为标题显示出来。15. 查找出最低工资min_lvl不大于25的雇员的fname。16. 显示出居住在CA州的作者1994年后出版书的日期及作者编号和所在州名。17. 显示出城市为Boston的出版社出版的所有图书名称及出版社所在的城市名。 18. 显示出居住在CA州的作者1994年后出版书的日期及作者编号、所在州名和订单订书数量sales.qty,按sales.qty的降序排序。19. 显示出job_lv
9、l大于100而小于250的人lname和job_desc(含等于)。20. 显示出图书类型(type)为business的图书的price和royaltyper 。21. 显示出stor_name和ord_date并按ZIP降序排列。22. 查找出emp_id是以M打头的雇员job_lvl、pub_name和job_desc,并且以job_lvl排序输出。23. 求出每个州ord_num以A开头以6结尾的zip最小值。 24. 查出订书的书店名称及订书日期,stores.stor_name显示为“名称”,sales.ord_date显示为“日期”。 25. 查找出pub_id不等于1389的出
10、版社出版的图书的作者的信息,并且以au_id排序。26. 查找出与contract不是0的作者所在州相同的stor_id。27. 找出minit为A, min_lvl为75的人名。28. 请将表roysched中所有title_id相同的hirange相加,求和,显示为id和。29. 写出不在美国(USA)的出版社出版的图书名及国家名。30. 查找出出版社pub_id=1389的所在州的作者的au_lname及州名。三、学时4学时实验四 数据更新一、目的1掌握Insert命令。2掌握Update命令。3掌握Delete命令。二、内容1用查询分析器向表中插入如下数据(写出相应语句)。studen
11、t表course表class表grade表2修改学号为2023110的学生的成绩为70分。3删除学号为2023110的学生的成绩记录。三、学时1学时四、思考题向student表、course表、class表和grade表中输入数据时有顺序规定吗?实验五 使用视图一、目的1理解视图的作用2掌握创建视图的SQL命令。二、内容用查询分析器建立如下视图。1建立班级为00311的学生信息视图。2建立一个学生姓名和课号的一个视图。3建立01312班选修了1号课程的学生视图Stu_01312_1。4建立01312班选修了1号课程并且成绩不及格的学生视图Stu_01312_2。5建立视图Stu_year,由学
12、生学号、姓名、年龄组成。三、学时1学时实验六 使用规则和默认一、目的1理解规则和默认的作用2掌握创建、使用规则和默认的SQL命令。二、内容用查询分析器完毕下列操作。1创建数据库。2使用create table语句建立student表。student表属性名数据类型可否为空含义SnoChar(7)否学号SnameVarchar(20)否学生姓名SsexChar(2)可性别SageSmallint可年龄ClnoChar(5)否学生所在班级3创建默认对象df_sex为男。4将默认对象df_sex绑定到student表的Ssex列。5查看student表上约束信息。6分别输入以下两条命令,观测stud
13、ent表的Ssex列数据。Insert into student (Sno,Sname,Sage,Clno) values(0306312,张三,19,03063)Insert into student values(0306315,李四,女,20,03063)7将默认对象df_sex从student表的Ssex列撤消。8输入以下命令,观测student表的Ssex列数据。Insert into student (Sno,Sname,Sage,Clno) values(0306318,王五,20,03063)9创建规则对象r_clno,使其第一、二、四、五位数据满足0-9,第三位数据满足0-2。10将规则对象r_clno绑定到student表的Clno列。11查看student表上约束信息。12设计输入数据,测试对Clno列数据的约束规则。三、学时2学时