数据库实验五

数据库实验五
数据库实验五

实验五:数据库综合查询

:年品学号:120802010027

一、实验目的

1. 掌握SELECT语句的基本语法和查询条件表示方法;

2. 掌握查询条件种类和表示方法;

3. 掌握连接查询的表示及使用;

4. 掌握嵌套查询的表示及使用;

5. 了解集合查询的表示及使用。

二、实验环境

已安装DBMS的计算机;

具有局域网环境,有固定IP;

三、实验学时

2学时

四、实验要求

1. 了解SELECT语句的基本语法格式和执行方法;

2. 了解连接查询的表示及使用;

3. 了解嵌套查询的表示及使用;

4. 了解集合查询的表示及使用;

5. 完成实验报告;

五、实验容及步骤

以数据库原理实验2数据为基础,请使用T-SQL 语句实现进行以下操作:1.查询以‘数据_’开头,且倒数第3个字符为‘结’的课程的详细情况;

2.查询名字中第2个字为‘阳’的学生和学号及选修的课程号、课程名;

3.列出选修了‘数学’或者‘大学英语’的学生学号、、所在院系、选修课程号及成绩;

4. 查询缺少成绩的所有学生的详细情况;

5. 查询与‘力’(假设唯一)年龄不同的所有学生的信息;

6. 查询所选课程的平均成绩大于力的平均成绩的学生学号、及平均成绩;

7. 按照?学号,,所在院系,已修学分?的顺序列出学生学分的获得情况。其中已修学分为考试已经及格的课程学分之和;

8. 列出只选修一门课程的学生的学号、、院系及成绩;

9. 查找选修了至少一门和力选修课程一样的学生的学号、及课程号;

10. 只选修?数据库?和?数据结构?两门课程的学生的基本信息;

11. 至少选修?数据库?或?数据结构?课程的学生的基本信息;

12. 列出所有课程被选修的详细情况,包括课程号、课程名、学号、及成绩;

13. 查询只被一名学生选修的课程的课程号、课程名;

14. 检索所学课程包含学生‘向东’所学课程的学生学号、;

15. 使用嵌套查询列出选修了?数据结构?课程的学生学号和;

16. 使用嵌套查询查询其它系中年龄小于CS系的某个学生的学生、年龄和院系;

17. 使用ANY、ALL 查询,列出其他院系中比CS系所有学生年龄小的学生;

数据库原理上机实验指导

数据库原理上机实验指导 一、实验目的和要求 1.实验目的 力图通过本实践课程的学习,使学生掌握数据库管理系统的基本概念、操作方法和管理方法,能够根据用户应用需求设计出合理的数据库应用系统逻辑模型方案,并且实现之。 2.实验要求 本实践课程主要介绍Microsoft SQL Server 2000系统的基本概念、基本知识;讲述数据库管理系统的安装、操作、设计、管理等基本概念及其操作方法;学习如何创建和管理数据库系统的步骤,为承担DBA角色作好准备。重点要求掌握Transact-SQL语言,学会数据库应用系统逻辑模型的设计和实现。 要求学生实验前认真准备,实验后提供实验报告,给出详细实验结果以及设计依据。 实验报告的格式应采用统一封面,统一的实验报告纸。封面应包括:课程名称、实验序号、名称、专业、班级、姓名、同组实验者、实验时间。实验报告内容应包括:实验名称、目的、内容、实验步骤、实验记录、数据处理(或原理论证、或实验现象描述、或结构说明等)。 二、实验环境介绍 1.硬件设备要求 微型计算机,最好具有局域网环境 2.软件设备要求 Windows 2000或Windows XP操作系统; MS SQL Server 2000数据库管理系统。 三、实验内容和学时分配 1.实验内容 实验1:服务器管理 实验2:创建和管理数据库 实验3:Transact-SQL语言——数据查询 实验4:Transact-SQL语言——数据定义与数据更新 实验5:数据库安全与保护——用户管理和权限管理 实验6:数据库安全与保护——数据完整性 实验7:数据库安全与保护——数据库的一致性和并发性 实验8:数据库安全与保护——数据库的备份与恢复 实验9:存储过程和触发器 实验10:嵌入式SQL的使用

数据库原理实验报告

数据库原理 实验报告 系别电子信息系 专业计算机科学与技术班级学号4080522 姓名龚敏 指导教师李爱英

一.概要设计 1.教学数据库各表的关系模式:(加下线的属性为主键) 学生 (学号,姓名,性别, 出生日期,所在系) 英文缩写对照:student(s_no,s_name,s_sex,s_age,s_birthday,s_department) 课程 (课程号,课程名,学分) 英文缩写对照:course(c_no,c_name,c_score) 教师 (职工号,姓名,性别,职称) 英文缩写对照:teacher(t_no,t_name,t_sex,t_duty) 选课 (学号,课程号,成绩) 英文缩写对照:choice(s_no,c_no,score) 讲授 (职工号,课程号) 英文缩写对照:teaching(t_no,c_no) 2.教学数据库E-R 图: 实体:课程,学生,选课 联系:选课(学生同课程之间多对多的联系m:n),讲授(教师同课程之间多对多的联系m:n)。 二.逻辑设计 代码: use master go create database stu go use stu go n m m n 课程 教师 讲授 选课 学号 姓名 性别 出生日期 成绩 职工号 姓名 性别 职称 学分 课程号 课程名 学生

create table student (s_no char(8) not null primary key, s_name char(8) not null , s_sex varchar(8) not null, s_birthday smalldatetime not null, s_department varchar(13) not null) drop table student use stu go create table teacher (t_no char(8) not null primary key, t_name char(8) not null, t_sex varchar(8) not null, t_duty char(8) not null) create table course (c_no char(8) not null primary key, c_name char(8) not null, c_score varchar not null) create table choice( s_no char(8) not null primary key, c_no char(8) not null primary key, score varchar not null) create table teaching( t_no char(8) not null primary key, c_no char(8) not null primary key) insert student values('101','袁敏','女','1982-2-3','机电') insert student values('102','李志强','男','1983-4-5','计算机') insert student values('103','张亮','男','1984-10-9','建筑') insert student values('104','李平','女','1984-5-6','计算机') insert student values('105','王丽','女','1983-2-1','机电') insert student values('106','刘明耀','男','1982-4-16','计算机') select* from student insert course values('1011','C语言','6') insert course values('1012','数据结构','4') insert course values('1013','微机原理','6') insert course values('1014','数字电路','5') insert course values('1015','高等数学','6') select* from course insert teacher values('0511','张大维','男','副教授') insert teacher values('0512','林楠','女','讲师') insert teacher values('0513','韩晓颖','女','副教授') insert teacher values('0514','李辉','男','讲师') insert teacher values('0515','孙丽','女','助教') select* from teacher insert choice values('101','1011','82.5') insert choice values('101','1012','79') insert choice values('102','1012','92.5') insert choice

pb实验指导

实验一数据库的创建与连接 目的和要求 (1)掌握PowerBuidler9.0数据库的创建与连接方法; (2)创建一个SQL Server数据库,为其配置ODBC数据源和DBProfile,然后在PowerBuilder环境中连接数据库; (3)创建数据库中的表,管理表并输入数据到表中。 上机准备 (l)启动Windows操作系统,如果在Windows操作系统的控制面板中没有安装ODBC32,必须进行ODBC的安装; (2)进人PowerBuilder 9.0集成环境,熟悉系统环境; (3)创建的应用个人应用mypb; (4)复习创建数据库的有关内容。 上机步骤 1..创建SQL Server 数据库 创建SQL Server数据库的步骤: (1)运行SQL Server 服务; (2)运行SQL Server 企业管理器; (3)创建student数据库; (4)在student数据库中,创建student表(见表1)。 2.配置ODBC 数据源 配置ODBC数据源的步骤: (1)在PowerBuilder数据库画板的窗口中,双击ODBC项下Utlities项的“ODBC Administrator”项,将弹出“ODBC数据源管理器”对话框: (2)选择“用户DSN”页,在该页的列表框中,列出了已有的数据源,若要修改已有的数据源,可以中击“配置”按钮进行修改。这里,我们需要添加一个ODBC数据源,所以,中击“添加”按钮创建新数据源,将出现标题为“创建新数据源”的对话框; (3)在“创建新数据源”的对话框中提供了一个系统支持的数据库驱动程序列表框,选择合适的驱动程序。这儿我们选择SQL Server,单击“完成”按钮,将弹出“创建SQL Server 新数据源”对话框; (4)输入新的数据源名称,这里为mydb。然后,选择想连接的SQL Server服务器,可选择local,然后单击“下一步”按钮; (5)选择SQL Server验证,登录ID 为sa,密码默认为空,然后单击“下一步”按钮; (5)更改默认的数据库为student,然后单击“下一步”按钮; (5)默认系统值,然后单击“完成”按钮;

数据库原理实验报告(1)

南京晓庄学院 《数据库原理与应用》课程实验报告 实验一 SQL Server 2005常用服务与实用工具实验 所在院(系):数学与信息技术学院 班级: 学号: 姓名:

1.实验目的 (1)了解Microsoft 关系数据库管理系统SQL Server的发展历史及其特性。 (2)了解SQL Server 2005的主要组件、常用服务和系统配置。 (3)掌握Microsoft SQL Server Management Studio 图形环境的基本操作方法。了解使用“SQL Server 2005 联机从书”获取帮助信息的方法;了解“查询编辑器”的使用方法;了解模板的使用方法。 2.实验要求 (1)收集整理Microsoft关系数据库管理系统SQL Server的相关资料,总结其发展历史及SQL Server 2005主要版本类别和主要功能特性。 (2)使用SQL Server配置管理器查看和管理SQL Server 2005服务。 (3)使用Microsoft SQL Server Management Studio连接数据库;使用SQL Server帮助系统获 得所感兴趣的相关产品主题/技术文档。 (4)使用Microsoft SQL Server Management Studio“查询编辑器”编辑并执行Transact-SQL 查询语句。 (5)查看Microsoft SQL Server 2005模板,了解模板的使用方法。 (6)按要求完成实验报告。 3.实验步骤、结果和总结实验步骤/结果 (1) 简要总结SQL Server系统发展历史及SQL Server 2005主要版本类别与主要功能特性。

数据库原理实验5

福建农林大学资源与环境学院实验报告 系:国土资源专业:空间信息与数字技术年级:2016 姓名:任然学号:3165706014 实验室号____507__ 计算机号44 实验时间:2018年5日指导教师签字:成绩: 报告退发(订正、重做) 实验名称:触发器、存储过程操作实验 一、实验目的和要求 (1)掌握SQL Server中的触发器的使用方法; (2)掌握存储过程的操作方法。 二、实验内容和原理 1. 基本操作实验 在读者-图书数据库中用Transact-SQL语句描述下列功能: (1)在读者表上建立一个DELETE类型的触发器lianxi_del,触发动作是显示信息(已删除读者表中的数据),执行下列语句: create trigger lianxi_del on 读者 for delete as print ‘已删除读者表中的数据’ (2)建立一个查询指定读者号的阅读信息的存储过程List_jy,输入参数为读者号,如果没有输入读者号,则要输出提示信息。建立这个存储过程的语句如下所示。 create procedure List_jy @p_dzh char(5) = null as if @p_dzh is null begin print ‘请输入一个读者号’ return end else select 编号,姓名,书名,借阅时间 from 读者,借阅,图书 where 读者.编号=借阅.读者编号 and 借阅.书号=图书.书号 and 读者.编号=@p_dzh 2. 提高操作实验 在学生-课程数据库中用Transact-SQL语句描述下列功能: (1)为学生表建立一个名TRI_INSERT的INSERT触发器。功能是当用户向学生表添加数据时,同时也把这些数据添加到stu表中。其中:学生表和表stu的结构相同。 (2)为学生表建立一个名TRI_DELETE的DELETE触发器。功能是当用户从学生表

数据库实验

数据库实验 集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)

数据库原理实验指导 实验前准备: 请设计一个企业销售管理据库,其中需要保存的信息如下: 员工信息,包括:员工编号、员工姓名、性别、所属部门、职称、到职日、生日、薪水、填表日期; 客户信息,包括:客户号,客户名称,客户住址,客户电话、邮政编码; 产品信息,包括:产品编号,产品名称; 员工和客户可以签订订单,每签订一个订单,就要保存订单信息,包括:订单编号、客户号、业务员编号、订单金额、订货日期、出货日期、发票号码。 此外,每个订单可能涉及到多种产品,每种产品可能被多个订单订购。因此需要每个订单中每类产品的销售明细,包括每种产品的销售数量、单价、订单日期; 要求: (1)给出系统的ER图(可以用word或其它画图工具,如Visio画),要求画出所有的实体,联系,属性以及联系的类型; (2)将ER图转换为关系模型; 实验一 实验名称:数据定义(2课时) 一、实验目的

1、理解数据库模式的概念,通过使用SQL SERVER企业管理器或者My Sql建立数据库和基本表。模式为人事表、客户表、销售表、销售明细表、产品表。熟悉SQL SERVER企业管理器的使用,并将得到的表生成脚本,然后保存。 2、理解上述基本表之间的关系,建立关系表。 3、掌握修改表结构的基本方法 4、掌握索引和视图的创建方法 二、实验环境 MS SQL SERVER或者My Sql。 三、实验内容与步骤 1、建立一个数据库和五张表的表结构。 (1)/*员工人事表employee */ Create datebase sale; create table employee( emp_no char(5) Not null primary key, emp_name char(10) Not null, sex char(1) Not null,

数据库原理实验报告分析

2013级数据库原理实验报告 专业:_______计算机___ 班级:________________ 学号:______________ 姓名:_______________ 2015年5月

实验一 SQL Server 2005基本操作 一、实验目的 了解SQL Server 2005组件; 了解SQL Server数据库组成; 掌握SQL Server 2005界面基本操作。 二、实验内容 (1)开始->程序->Microsoft SQL Server 2005-> SQL Server Management Studio,打开后进入到SQL Server 2005主体界面 (2)点击?数据库?前面的?+?,可以展开查看数据库,并且可以继续展开下级目录,查看数据库中的表、视图等。 (3)了解SQL Server 2005菜单栏的一些主要工具的使用。 (4)学生动手操作SQL Server 2005,打开数据库,打开表,打开查询界面;查看数据库的属性、表的属性等。 三、实验总结 进行这次实验有遇到什么问题?怎么解决的? 答:此次实验我们一步一步按照实验内容操作的,基本上没有遇到问题。

实验二数据定义 一、实验目的 掌握SQL Server 2005的数据库创建; 掌握SQL Server数据定义语言; 掌握SQL Server 2005数据定义的SQL语言定义与管理器定义两种方式。 二、实验内容 (1)创建、修改、删除数据库。 创建要求:数据库Employee中包含一个数据库文件Empdat1.mdf和一个日志文件Emplog.ldf。其中,数据文件大小为10MB,最大为50MB,以5MB速度增长;日志文件大小为5MB,最大为25MB,以5%速度增长。 修改要求:增加第二个数据库文件Empdat2.ndf,其中,数据文件大小为5MB,最 大为25MB,以2MB速度增长。 (2)利用SQL创建人员表person、月薪表salary及部门表dept。 见上页图 要求:按表2-1、表2-2及表2-3中的字段说明创建。

Oracle 数据库上机试验指导2(答案)

实验二代码参考: 1.-- 创建学生表 create table student ( studid char(6) primary key, studname varchar2(16) not null, gender char(4) check(gender in('男','女')), addr varchar2(256) ); -- 创建课程表 create table course ( courseid char(6) primary key, coursename varchar2(32) not null unique, teacher varchar2(16) , score number check(score in (1,3,5)) ); -- 创建选课表 create table courSelc ( recid number(4) primary key, studid char(6), courseid char(6), score number(2) check(score >=0 and score <=100), constraint fk_stud foreign key(studid) references student(studid), constraint fk_cour foreign key(courseid) references course(courseid) ); 2. alter table student modify studName null; 3.1 alter table course modify courseName null; 3.2 alter table course add examdate date; 4.insert into course values('M1001','数学','奥巴马','3',to_date('2012-1- 1','yyyy-mm-dd')); insert into course values('J2002','军事理论','拿破仑','5',to_date('2012-1-1','yyyy-mm-dd'));

《数据库原理》实验7

实验七:数据库的安全性 一、实验目的 1.掌握Windows NT认证模式下数据库用户帐号的建立与取消方法; 2.掌握混合模式下数据库用户帐号的建立与取消方法; 3.掌握数据库用户权限的设置方法; 4.熟悉数据库数据库用户帐号的权限分配、回收等方法; 5.了解数据库角色的分类、作用及使用方法。 二、实验环境 已安装SQL Server 2005 企业版的计算机; 具有局域网环境,有固定IP; 三、实验学时 2学时 四、实验要求 1.了解SQL Server 2005系统安全; 2.熟悉数据库用户、服务器角色及数据库角色的用法; 3.完成实验报告; 五、实验内容及步骤 以系统管理员身份登录到SQL Server服务器,在SQL Server2005界面中实现以下操作,并独立写出部分题目的程序代码; 1.在当前计算机中增加一个用户zhang和cheng,密码为secret。使此用户通 过winows nt模式下登录SQL Server服务器,登录名分别为zhang和cheng; 2.新建以混合模式登录SQL Server服务器的用户登录名为stu1、stu2和stu3, 登录密码为secret,默认登录数据库为stu; 3.将帐号zhang添加为数据库stu的用户,用户名为zhang; 4.在数据库stu中创建用户stu1、stu2和stu3,登录帐号分别为stu1、stu2 和stu3; 5.给数据库用户zhang赋予创建数据库的权限; 6.给数据库用户stu1赋予对sc表进行插入、修改、删除操作权限; 7.给数据库用户stu2和stu3赋予对student表、course表所有操作权限及查 询sc的操作权限,并允许再授权给其他用户; 8.收回数据库用户stu2对student表和course表的删除操作的权限; 9.若一个小组共5个成员,他们对数据库stu具有相同的操作权限,具体权限 如下: 1)对于student、course表只能进行数据查询;

数据库上机实验总结(含代码)

实验一 (1)无条件单表查询 select sname NAME,'year of birth:' BIRTH,2004-sage BIRTHDAY,LOWER(sdept) DEPARTMENT FROM student; (2)有条件单表查询 SELECT sname,sdept,sage FROM student WHERE sage NOT BETWEEN 20 AND 23; (3)单表嵌套(一层)查询 SELECT sno,sname,sdept FROM student WHERE sdept IN(SELECT sdept FROM student WHERE sname='刘晨'); (4)复合条件多表查询 SELECT student.sno,sname,cname,grade FROM student ,sc,course WHERE student.sno=sc.sno AND https://www.360docs.net/doc/9b12204963.html,o=https://www.360docs.net/doc/9b12204963.html,o; (5)使用COUNT()的单表查询 SELECT COUNT(*) FROM student; (6)使用AVG()的单表查询 SELECT AVG(grade) '平均成绩' from SC where CNO='1'; (7)查询结果分组 SELECT cno,COUNT(sno) '人数' FROM sc GROUP BY cno; (8)查询结果排序 SELECT * FROM student ORDER BY sdept,sage DESC; (9)使用通配符的查询 SELECT sname,sno,ssex FROM student WHERE sname NOT LIKE'刘%'; (10)使用换码字符的单表查询 SELECT cno,ccredit FROM course WHERE cname LIKE 'DB\_Design'ESCAPE'\'; (11)插入单个元组 插入一个新学生元组 Insert into student (sno,sname,ssex,sdept,sage) values ('200215128','陈冬','男','IS',18) (12)插入子查询结果 对每一个系,求学生平均年龄,并把结果存入数据库 Create table dept_age(sdept char(15),avg_age int) Insert into dept_age(sdept,avg_age) select sdept,avg(sage) from student group by sdept (13)修改某个元组的值 将学生200215121的年龄改为22岁 Update student set sage=’22’ where sno=’200215121’ (14)修改多个元组的值

数据库原理B实验报告完整版1-3

实验一 认识DBMS系统 日期 2011-3-23一、实验目的 1.通过对某个商用数据库管理系统的使用,了解DBMS的工作原理和系统构架。 2.熟悉对DBMS的操作 3.搭建今后实验的平台 二、实验原理 企业管理器是SQL Server中最主要的工具,使用它基本上可完成SQL Server的所有管理操作,如数据库的创建和管理、数据表的创建和管理、数据库安全管理等,在本书第五课中将对其作详细介绍。 查询分析器主要用于创建和执行SQL命令,以完成数据库的查询和管理工作。查询分析器和企业管理器是SQL Server的两大主要工具。 服务管理器主要用于启动、暂停、停止和检查本地服务的状态。SQL Server提供如下服务: SQL Server服务:该服务提供管理服务器中的所有数据库、执行T-SQL程序、执行存储过程、处理分布式查询等服务。必须启动该服务,用户才能通过客户端访问SQL Server服务器中的数据。 SQL Server Agent服务:该服务用于执行作业、监视SQL Server以及激发警报。SQL Server Agent允许自动执行某些管理任务的服务,所以必须启动SQL Server Agent 服务,才能使本地或多服务器的管理任务自动运行。 Microsoft Search服务:提供SQL Server全文检索功能。 Distributed Transaction Coordinator服务:提供Microsoft分布式事务处理功能。 MSSQL Server OLAP Service服务:支持Analysis Services的各项功能,该服务在安装了支持Analysis Services才有。 三、实验仪器和设备 1. 计算机 2. SQL Server 2000 四、预习要求 复习已经讲过的SQL Server 2000的基本工具使用方法。

数据库实验报告

数据库实验报告

数据库原理及应用(本科)实验指导书 -计算机信息教研室- 二○一二年五月 精心整理,用心做精品0

目录 实验1 创建数据库与数据表 (2) 实验2 简单查询和连接查询 (10) 实验3 嵌套查询和集合查询 (12) 实验4 数据完整性 (14) 精心整理,用心做精品1

时间:机房号:得分: 实验1 创建数据库与数据表 实验目的: 1.熟悉SQL SERVER环境; 2.掌握数据库和数据表的创建和删除,实践SQL的CREATE、ALTER 和DROP命令; 3.掌握数据表的创建和数据记录的插入方法。 实验内容: 1. 创建教学管理“JXGL”数据库,并建立学生STUDENT、课程COURSE 和选修SC三个数据表,各表中的数据如下所示: 学生STUDENT: Sno Sname Ssex Sage Sdept 95001 李勇M 20 CS 95002 刘晨 F 19 IS 95003 王敏 F 18 MA 95004 张立M 18 IS 课程COURSE: Cno Cname Cpno Ccredit 1 数据库 5 4 2 数学 2 3 信息系统 1 4 4 操作系统 6 3 5 数据结构7 4 6 数据处理 2 精心整理,用心做精品2

7 C语言 6 4 选修SC: Sno Cno Grade 95001 1 92 95001 2 85 95001 3 88 95002 2 90 95002 3 80 2. 创建供应系统“GYXT”数据库,其中包括供应商表S、零件表P、工程项目表J和供应情况表SPJ四个数据表,各表中数据如下所示。 供应商S: SNO SNAME CITY S1 精益天津 S2 万胜北京 S3 东方北京 S4 丰泰隆上海 S5 康健南京 零件P: PNO PNAME COLOR WEIGHT P1 螺母红12 P2 螺栓绿17 P3 螺丝刀蓝14 P4 螺丝刀红14 P5 凸轮蓝40 P6 齿轮红30 工程项目J: JNO JNAME CITY J1 三建北京 J2 一汽长春 J3 弹簧厂天津 J4 造船厂天津 精心整理,用心做精品3

数据库上机实验报告

《数据库技术与应用》上机实验报告 姓名:谢优贤 学号:020******* 专业班级:安全工程1003班

通过这次上机实验,我做了学生信息管理系统数据库,通过创建表、查询、窗体、报表和宏对输入数据库中的学生的基本信息进行整理和操作,以便得到我们想要的信息。学生信息管理系统可以实现对学生的基本信息:学号、姓名、联系方式、性别、成绩等的查询,还有对教师的情况进行比较了解从而可以帮助学生更好地选课和学习,省去了纸质档案管理不方便的方面。 通过窗体的创建和美化,使我们在操作数据时有一个简洁明了美观的窗口,简化了用户的操作程序,方便用户的使用。报表的创建可以使用户想要的数据很好地呈现在纸上。使用宏命令还使数据库有了设置密码的功能,很好的保护了数据的使用权限;也可以使用宏命令打开我们希望打开的窗口。 一、主要上机内容 1. 数据库的创建: 我使用自行创建数据库的方式进行创建,数据库文件名为学生信息管理系统。数据库要实现的主要功能:学生基本信息及学习成绩情况的统计,通过窗体进行学生信息的查询、学生信息及成绩的普通查询、打印学生信息报表等。 2. 表的创建: 基本表为学生信息表、学生成绩表、教师信息表、课程信息表等均使用设计器创建表学生信息表的记录: 学生信息表结构: 在学生信息表中设置了学号为主键,为了方便输入又在学号字段中设置了掩码(如下图)

学生年龄一般不会太大或太小,于是为了防止填写信息时出错,添加了有效性规则 性别只有男和女之分,于是为了方便,选择了查询向导 同样在入学日期和电话字段也设置了输入掩码 头像属于图片类型,其数据类型为“OLE对象”,所得荣誉和自我介绍选择了“备注”类

数据库原理实验一

电子信息工程学系实验报告 课程名称: 《数据库原理》 实验项目名称:表的创建和管理 实验时间: 班级: 姓名: 学号: 实 验 目 的: (1)了解SQL Server 的基本数据类型。 (2)学会在企业管理器中创建数据库及表。 (3)学会使用T-SQL 语句创建数据库及表。 (4)学会在企业管理器中修改表的定义。 (5)学会使用SQL 语句修改表的定义 实 验 环 境: winXP +Sql server 2000 实 验 内 容 及 过 程: (1)用企业管理器,建立的数据库SCHOOL ,建立如书本75页的P,S,J,SPJ 四张表,并添加数据。 (2)用企业管理器删除所建立的SPJ 和J 两张表。 (3)在查询分析器中用sql 语句删除表S 和表P,S ,删除数据库SPJ 。 (4)在查询分析器中用sql 语句创建数据库SPJ ,用SQL 语句创建各书本75页的P,S,J,SPJ 四张表,用insert 命令分别向四张表里面添加如75页所示的数据。 (5)将以上用到的SQL 命令以 “实验一.SQL ”文件的形式保存。 (6)用企业管理器备份数据库SPJ 到备份文件SPJ.bak 。 实 验 结 果 及 分 析: (1)

(2) (3) DROP TABLE P; DROP TABLE S; DROP DA TABASE SPJ; (5)

实验心得: 附录: CREATE DATABASE SPJ ON ( NAME=pSPJ, FILENAME='H:\SQL\MSSQLDATA\mydb.mdf',SIZE=10MB,MAXSIZE=100MB,FILEGROWTH=1 MB ) LOG ON ( NAME=logSPJ, FILENAME='H:\SQL\MSSQLDATA\mydb.ldf',SIZE=100MB,MAXSIZE=1000MB,FILEGROWTH= 10MB ) go use SPJ CREATE TABLE S( Sno CHAR(2) NOT NULL, --供应商代码不能为空 Sname V ARCHAR(20), Status int , City V ARCHAR(20) , CONSTRAINT S_pk PRIMARY KEY(Sno) --应商代码为主键 ); CREATE TABLE P( Pno CHAR(2) NOT NULL, --零件代码不能为空

南工大数据库实验+考试——上机实验指导_实验内容和思考参考答案

实验2:SQL Server数据库的管理 二、实验内容及步骤 4.单击“新建查询”打开查询设计器窗口,在查询设计器窗口中使用Transact-SQL语句CREATE DATABASE创建studb数据库。然后通过系统存储过程sp_helpdb查看系统中的数据库信息。 CREATE DATABASE studb ON (NAME=studb_dat, FILENAME='C:\DataBase\studb.mdf') EXEC sp_helpdb 5.在查询设计器中使用Transact-SQL语句ALTER DATABASE修改studb数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小为1MB。 ALTER DATABASE studb MODIFY FILE(NAME=studb_data,SIZE=5MB,MAXSIZE=20MB,FILEGROWTH= 1MB) 6.在查询设计器中为studb数据库增加一个日志文件,命名为studb_Log2,大小为5MB,最大文件大小为10MB。 ALTER DATABASE studb ADD LOG FILE(NAME=studb_log2,FILENAME=studb_log2.ldf,SIZE=5MB, MAXSIZE=10MB) 8.使用Transact-SQL语句DROP DATABASE删除student_db数据库。 DROP DATABASE student_db 实验3SQL Server数据表的管理 二、实验内容及步骤 5.使用Transact-SQL语句CREATE TABLE在studentsdb数据库中创建grade表。 CREATE TABLE grade( [学号][char](4)NULL, [课程编号][char](4)NULL, [分数][char](5)NULL )ON[PRIMARY] 8.使用Transact-SQL语句INSERT INTO...VALUES向studentsdb数据库的grade表插入数据:学号为0004,课程编号为0001,分数为80。 INSERT grade VALUES('0004','0001','80') 9.使用Transact-SQL语句ALTER TABLE修改curriculum表的“课程编号”列,使之为非空。

《数据库原理》实验4

实验四:数据库综合查询 一、实验目的 1.掌握SELECT语句的基本语法和查询条件表示方法; 2.掌握查询条件种类和表示方法; 3.掌握连接查询的表示及使用; 4.掌握嵌套查询的表示及使用; 5.了解集合查询的表示及使用。 二、实验环境 已安装SQL Server 2008 企业版的计算机; 具有局域网环境,有固定IP; 三、实验学时 2学时 四、实验要求 1.了解SELECT语句的基本语法格式和执行方法; 2.了解连接查询的表示及使用; 3.了解嵌套查询的表示及使用; 4.了解集合查询的表示及使用; 5.完成实验报告; 五、实验内容及步骤 以数据库原理实验2数据为基础,请使用T-SQL 语句实现进行以下操作: 1.查询以‘DB_’开头,且倒数第3个字符为‘s’的课程的详细情况; 2.查询名字中第2个字为‘阳’的学生姓名和学号及选修的课程号、课程名; 3.列出选修了‘数学’或者‘大学英语’的学生学号、姓名、所在院系、选修 课程号及成绩; 4.查询缺少成绩的所有学生的详细情况; 5.查询与‘张力’(假设姓名唯一)年龄不同的所有学生的信息; 6.查询所选课程的平均成绩大于张力的平均成绩的学生学号、姓名及平均成 绩; 7.按照?学号,姓名,所在院系,已修学分?的顺序列出学生学分的获得情况。 其中已修学分为考试已经及格的课程学分之和; 8.列出只选修一门课程的学生的学号、姓名、院系及成绩; 9.查找选修了至少一门和张力选修课程一样的学生的学号、姓名及课程号; 10.只选修?数据库?和?数据结构?两门课程的学生的基本信息;

11.至少选修?数据库?或?数据结构?课程的学生的基本信息; 12.列出所有课程被选修的详细情况,包括课程号、课程名、学号、姓名及成绩; 13.查询只被一名学生选修的课程的课程号、课程名; 14.检索所学课程包含学生‘张向东’所学课程的学生学号、姓名; 15.使用嵌套查询列出选修了?数据结构?课程的学生学号和姓名; 16.使用嵌套查询查询其它系中年龄小于CS系的某个学生的学生姓名、年龄和 院系; 17.使用ANY、ALL 查询,列出其他院系中比CS系所有学生年龄小的学生; 18.分别使用连接查询和嵌套查询,列出与‘张力’在一个院系的学生的信息; 19.使用集合查询列出CS系的学生以及性别为女的学生名单; 20.使用集合查询列出CS系的学生与年龄不大于19岁的学生的交集、差集; 21.使用集合查询列出选修课程1的学生集合与选修课程2的学生集合的交集; 22.思考题:按照课程名顺序显示各个学生选修的课程(如200515001 数据库数 据结构数学); 六、出现问题及解决办法 如:某些查询操作无法执行,如何解决? 1、查询以‘DB_’开头,且倒数第三个字符为‘s’的课程的详细情况 select * from course where cname like 'DB\_%s__' 2、查询名字中第二个字为“阳”的学生姓名和学号及选修的课程号、课程名 select student.sno ,student.sname ,https://www.360docs.net/doc/9b12204963.html,o,cname from student,course,sc where sname like '_阳%'and student.sno=sc.sno and https://www.360docs.net/doc/9b12204963.html,o=https://www.360docs.net/doc/9b12204963.html,o 3、列出选修了‘数学’或‘大学英语’的学生学号、姓名、 select student.sno,sname,sdept,https://www.360docs.net/doc/9b12204963.html,o,cname,grade from student,sc,course where student.sno=sc.sno and https://www.360docs.net/doc/9b12204963.html,o=https://www.360docs.net/doc/9b12204963.html,o and sc.sno in(select sc.sno from sc,course where (cname='大学英语'or cname='数学')and https://www.360docs.net/doc/9b12204963.html,o=https://www.360docs.net/doc/9b12204963.html,o group by sc.sno) select student.sno,sname,sdept,cno,grade from student,sc where Cno in (select Cno from course where cname='数学'or cname='大学英语')and sc.sno=student.sno 4、查询缺少成绩的所有学生的详细情况; select * from student,sc where Grade is null and student.sno=sc.sno 5、查询与‘张力’(假设姓名唯一)年龄不同的所有学生的信息; select * from student where sage <>(select sage from student where sname='张力') 6、查询所选课程的平均成绩大于张力的平均成绩的学生学号、姓名及平均成绩 select student.sno,sname,平均成绩=A VG(grade) from student ,sc

数据库原理上机实验代码及截图

《数据库原理》上机实验报告 2017年11月

一、实验目的与要求: ●熟练使用SQL定义子语言、操纵子语言命令语句●掌握关系模型上的完整性约束机制 ●掌握一定的数据库管理技术 ●能完成简单的数据库应用开发 二、实验容 1、实验一到实验十七 (一)数据定义子语言实验(2学时) 实验1:利用SQL语句创建Employee数据库 代码如下: create database Employee; 运行结果:

实验2:利用SQL语句在Employee数据库中创建人员表person、月薪表salary及部门表dept, 暂不定义外键约束。 要求:按表1、表达、表3中的字段说明创建 表1 person表结构 表2 salary表结构 表3 dept表结构 代码如下: create table person( P_no char(6) not null primary key, P_name varchar(10) not null, Sex char(2) not null, Birthdate datetime null,

Prof varchar(10) null, Deptno char(4) not null ); create table salary( P_no char(6) not null primary key, Base dec(5) null, Bonus dec(5) null, Fact dec(5) null, Month int not null ); create table dept( Deptno char(4) not null primary key, Dname varchar(10) not null ); 运行结果:

数据库原理实验1

实验一数据库与数据表定义 1 实验目的与要求 (1)掌握数据库的建立、删除和修改操作。 (2)理解基本表之间的关系,掌握表结构的建立、修改和删除操作,创建模式导航图。 2 实验内容与结果 实验内容: (1) 创建一个BookDB数据库,要求至少一个数据文件和一个日志文件。 (2) 创建图书管理相关4张关系表,表结构如图3-1至图3-4所示。 图3-1图书分类表BookClass 图3-2 图书表Book 图3-3读者表Reader

图3-4 借阅表Borrow (3) 表结构的修改,要求: ①修改图书表结构,要求出版社名称和入库时间不允许为空。 ②修改读者表结构,要求读者身份证号不允许为空。 实验结果如下: 创建数据库: CREATE DATABASE BookDB48 ON PRIMARY (NAME='BookDB', FILENAME='C:\数据库文件\BookDB48.mdf', SIZE=3, MAXSIZE=20, FILEGROWTH=1 ) LOG ON ( NAME='BookDB_LOG', FILENAME='C:\数据库文件\BookDB48_log.ldf', SIZE=3, MAXSIZE=20, FILEGROWTH=1) 脚本如下:(创建的四个表) CREATE TABLE BookClass48( classNo char(3)NOT NULL,--图书分类号 className varchar(20)NOT NULL,--图书分类名称 CONSTRAINT BookClass48PK PRIMARY KEY(classNo) ) CREATE TABLE Book48( bookNo char(10)NOT NULL,--图书编号 classNo char(3)NOT NULL,--图书分类号 bookName varchar(40)NOT NULL,--图书名称 authorName varchar(8)NOT NULL,--作者名字 publishingName varchar(20)NULL,--出版社名称 publishingNo char(17)NULL,--出版社编号 publishingDate datetime NULL,--出版社日期 price numeric(7,2)NULL,--单价 shopDate datetime NULL,--入库时间 shopNum datetime NULL,--入库数量 CONSTRAINT Book48PK PRIMARY KEY(bookNo), CONSTRAINT Book48FK FOREIGN KEY(classNo)REFERENCES BookClass48(classNo) )

相关文档
最新文档