数据库查询和更新操作实验报告

数据库查询和更新操作实验报告
数据库查询和更新操作实验报告

南昌航空大学实验报告

二00 年月日

课程名称:数据库概论实验名称:SQL语言-查询和更新操作

班级:102022 姓名:涂海同组人:

指导教师评定:签名:

一、实验环境

1.Windows2000或以上版本;

2.SQLServer2000或2005。

二、实验目的

1.了解查询、更新的概念和方法;

2.掌握查询分析器或企业管理器中执行SELECT操作和更新数据操作的方法;

3.掌握SELECT语句在单表查询中的应用;

4.掌握SELECT语句在多表查询中的应用;

5.掌握SELECT语句在复杂查询中的使用方法。

6.掌握INSERT、UPDATE、DELETE语句在更新中的应用。

三、实验要求

供应商表S(SN,SNAME,CITY),其中SN为供应商代号,SNAME为供应商名字,CITY为供应商所在城市,主关键字为SN;

零件表P(PN,PNAME,COLOR,WEIGHT)其中PN为零件代号,PNAME 为零件名字,COLOR为零件颜色,WEIGHT为零件重量,主关键字为PN;

工程表J(JN,JNAME,CITY),其中JN为工程代号,JNAME为工程名字,CITY为工程所在城市,主关键字为JN;

供应关系表SPJ(SN,PN,JN,QTY),其中SN、PN、JN含义同上,QTY 表示提供的零件数量,主关键字为(SN,PN,JN),外关键字为SN、PN、JN

四、实验步骤及参考源代码

1 先将4个表输入完成

源程序如下:

--1.创建供应商表

CREA TE TABLE S(

SN CHAR(3),

SNAME V ARCHAR(20),

CITY V ARCHAR(20),

PRIMARY KEY(SN)); --2.创建零件表

CREA TE TABLE P(

PN CHAR(3),

PNAME V ARCHAR(20),

COLOR CHAR(4),

WEIGHT INT,

PRIMARY KEY(PN)); --3.创建工程表

CREA TE TABLE J(

JN CHAR(3),

JNAME V ARCHAR(20),

CITY V ARCHAR(20),

PRIMARY KEY(JN));

--4.创建供应关系表

create table SPJ

(SN char(3) ,

PN char(3),

JN char(3),

QTY int ,

primary key(SN,PN,JN),

foreign key(SN) references S, foreign key(PN) references P, foreign key(JN) references J);

--5.插入数据

insert into S

values('S1','SN1 ', '上海') ; insert into S

values('S2','SN2 ', '北京') ; insert into S

values('S3','SN3 ', '南京') ; insert into S

values('S4','SN4 ', '西安') ;

insert into S

values('S5','SN5 ', '上海') ;

insert into P

values('P1','PN1 ', '红',12) ; insert into P

values('P2','PN2 ', '绿',18) ; insert into P

values('P3','PN3 ', '蓝',20) ; insert into P

values('P4','PN4 ', '红',13) ; insert into P

values('P5','PN5 ', '白',11) ; insert into P

values('P6','PN6 ', '蓝',18) ;

insert into J

values('J1','JN1 ', '上海') ; insert into J

values('J2','JN2 ', '广州') ; insert into J

values('J3','JN3 ', '武汉') ; insert into J

values('J4','JN4 ', '北京') ; insert into J

values('J5','JN5 ', '南京') ; insert into J

values('J6','JN6 ', '上海') ; insert into J

values('J7','JN7 ', '上海') ;

insert into SPJ

values('S1','P1','J1',200) ; insert into SPJ

values('S1','P1','J4',700) ; insert into SPJ

values('S2','P3','J1',800) ; insert into SPJ

values('S2','P3','J2',200) ; insert into SPJ

values('S2','P3','J3',30) ; insert into SPJ

values('S2','P3','J4',400) ; insert into SPJ

values('S2','P3','J5',500) ; insert into SPJ

values('S2','P3','J6',200) ; insert into SPJ

values('S2','P3','J7',300) ; insert into SPJ

values('S2','P5','J2',200) ; insert into SPJ

values('S3','P3','J1',100) ; insert into SPJ

values('S3','P4','J2',200) ; insert into SPJ

values('S4','P6','J3',300) ; insert into SPJ

values('S4','P6','J7',500) ; insert into SPJ

values('S5','P2','J2',500) ; insert into SPJ

values('S5','P2','J4',250) ; insert into SPJ

values('S5','P5','J5',300) ; insert into SPJ

values('S5','P5','J7',100) ; insert into SPJ

values('S5','P6','J2',200) ; insert into SPJ

values('S5','P1','J4',300) ; insert into SPJ

values('S5','P3','J4',100) ; insert into SPJ

values('S5','P4','J4',200) ; 然后进行查询:

1.

select *

from j

where CITY='上海'

2

SELECT PN

FROM P

WHERE WEIGHT=

(

select MIN(WEIGHT)

FROM P

)

3

SELECT SN

FROM SPJ

WHERE JN='J1'

4

SELECT SN

FROM SPJ

WHERE JN='J1' AND PN='P1'

5

SELECT JNAME

FROM J SPJ

WHERE JN IN(

SELECT JN

FROM SPJ

WHERE SN='S1'

)

6

SELECT COLOR

FROM P SPJ

WHERE PN IN(

SELECT PN

FROM SPJ

WHERE SN='S1'

)

7

SELECT S2.SN

FROM SPJ S1,SPJ S2

WHERE S1.JN='J1'AND S2.JN IN(

SELECT JN

FROM SPJ S2

WHERE S2.JN='J2'

)

GROUP BY S2.SN

8

SELECT SN

FROM SPJ P

WHERE JN='J1'AND PN IN(

SELECT PN

FROM P

WHERE COLOR='红'

)

GROUP BY SN

9

SELECT SN

FROM SPJ J

WHERE JN IN(

SELECT JN

FROM J

WHERE CITY='上海'

)

GROUP BY SN

10

SELECT SN

FROM SPJ J

WHERE JN IN(

SELECT JN

FROM J

WHERE CITY='上海'OR CITY='北京' )

GROUP BY SN

11

SELECT SN

FROM S J

WHERE CITY IN(

SELECT CITY

FROM J

WHERE CITY='上海'

)

GROUP BY SN

12

SELECT PN

FROM SPJ S

WHERE SN IN(

SELECT SN

FROM S J

WHERE CITY IN(

SELECT CITY

FROM J

WHERE CITY='上海'

)

)

GROUP BY PN

13

SELECT SPJ.PN

FROM SPJ,S,J

where J.JN=SPJ.JN AND SPJ.SN=S.SN AND J.CITY='上海'

AND S.CITY='上海';

14

SELECT SPJ.JN

FROM S,SPJ,J

WHERE S.SN=SPJ.SN AND SPJ.JN=J.JN AND S.CITY!=J.CITY EXCEPT

SELECT SPJJN

FROM S,SPJ,J

WHERE S.SN=SPJ.SN AND SPJ.JN=J.JN AND S.CITY!=J.CITY;

15

SELECT JN

FROM SPJ

WHERE SN NOT IN(

SELECT SN

FROM S

WHERE CITY='上海')

EXCEPT

SELECT JN

FROM SPJ

WHERE SN NOT IN(

SELECT SN

FROM S

WHERE CITY='上海');

21

SELECT JN

FROM J

WHERE JN NOT IN(

SELECT J.JN

FROM S,P,SPJ

WHERE S.SN=SPJ.SN AND SPJ.PN=P.PN

AND S.CITY='天津' and p.color='红' );

23

UPDATE P

SET COLOR='蓝'

WHERE COLOR='红'

UPDATE SPJ

SET SN='s8'

WHERE SN='s6' AND JN='j4'

DELETE

FROM SPJ

WHERE SN='s2'

DELETE

FROM S

WHERE SN='s2'

INSERT

INTO J

VALUES('j8','JN8','江西');

INSERT

INTO S

VALUES('s9','SN9','江西'); INSERT

Into SPJ

VALUES('s9','p4','j8',200);

五、实验结果

创建的数据库为

1. 2. 3. 4. 5. 6.

7. 8. 9.

10.

11.

12.

13.

14.

15.

21.

23.

六、实验体会

在本次实验中,我已经了解查询、更新的概念和方法,查询的的关键字为select,更新的为update。并且掌握查询分析器或企业管理器中执行SELECT 操作和更新数据操作的方法;掌握SELECT语句在单表查询中的应用;掌握SELECT语句在多表查询中的应用;掌握SELECT语句在复杂查询中的使用方法。掌握INSERT、UPDATE、DELETE语句在更新中的应用。

vb大作业 实验报告

软件技术实验报告 学号2009300186 姓名赵佶男班级010109卓 越 大作业机房管理系统 课题基本目标要求: 1)可在系统中由系统管理员按班级指定时间进行上机课时安排,安排上机不得与其他已安排机时冲突。 2)在指定上机课时段,除了上机班级学生可以登录外,其余无关学生一律不得登录,除非系统管理员授权。预定上机时间结束时,自动 提前5分钟提示,待真正结束时即自动锁屏。 3)除上机课时安排以外,可以在机动时间段接受学生凭个人一卡通上机,且上机实施计时自动收费(即扣除学生一卡通上因上机而应缴 纳的上机服务费) 4)在接受零散学生付费上机时,可自动为其分配空闲机器并授权使用,在分配机器时应考虑机器的使用情况分布均匀,即每次分配机器是 前一时段未曾使用的机器,当学生一卡通上的余额,不足以支付1 小时上机服务费时,应提示其下机充值,并实施锁屏。 实验步骤: 首先,根据大作业的要求,我建立了机器表,流水表,学生基本情况表,上课表,以及一卡通表五个数据库表。机器表用来按照使用情况,选择空闲时间最长的机器。流水表用来记录现在机器以及人员使用的情况,是个

动态表,用来方便的取用和修改数据。学生基本情况表用来存放学生的学号,密码,班级等基本情况,以实现学生上课登录和自由登录。上课表存放各个班级的上课下课时间,以实现排课功能。一卡通表记录了每个学生一卡通内的金额,用来帮助实现上下机的扣费,以及余额不够支付一小时时间情况下得强制下机。 然后,我进行了窗体的设计。经过筛选优化,我设计了五个窗体,分别是主选择窗体,注册窗体,登录窗体,上课安排窗体,实时计费和下机窗体。 主选择窗体可以用来进行上课登录、学生自由登录、管理员登录和机器的推荐。注册窗体是用来进行学生登录密码的注册。登录窗体限制学生的学号和密码必须匹配才能登录。上课安排窗体可以输入班号、上下课时间并选择星期值。实时计费和下机窗体用来扣费并方便学生随时下机。 接下来,要按照要求进行代码的编写。 A)可在系统中由系统管理员按班级指定时间进行上机课时安排,安排上机不得与其他已安排机时冲突。 此功能我在排课窗体下用select选择出全体班级的上下课以及星期值,并将管理员希望的上下课时间转换为时间类型数值,进行循环比较,用do until 语句逐个比较,使得上下课时间点都不得在其他班级的上课时间段内。如果时间不冲突,就实施修改数据库的功能,并更新保存。 B)在指定上机课时段,除了上机班级学生可以登录外,其余无关学生一律不得登录,除非系统管理员授权。预定上机时间结束时,自动提前5分钟提示,待真正结束时即自动锁屏。 在主选择窗体内有上课登录按钮和自由登录按钮。点击上课登录,输入学

SQL Server 2008 数据库案例教程课后习题答案

《SQL Server 2008数据库案例教程》练习题及模拟试卷答案 第1章 一、判断题 1. 数据库技术是是计算机数据处理与信息管理系统的核心。(√) 2. 数据是用于描述现实世界中具体事物或抽象概念,可存储的数字符号。(×) 3. 数据库是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。(√) 4. 数据库管理系统是一个按数据结构来存储和管理数据的服务器管理系统。(×) 5. 关系数据库,是建立在关系模型基础上的数据库。(√) 二、单选题 1. 数据(Data)是一些可存储并具有明确意义的(A) A. 符号 B.图形 C.文字 D.数字 2. 人工阶段计算机用于数值计算,没有操作系统及管理数据的软件。这一阶段的年代是(C) A. 19世纪80年代 B. 20世纪20年代 C.20世纪50年代 D. 20世纪80年代 3. 在网页中常用的图像格式是(D) A..bmp和.jpg B..gif和.bmp C. .png和.bmp D. .gif和.jpg 4.数据库系统的重要特征是什么?(D) A. 数据的独立性和动态性 B.数据的静态性和独立性 C.数据的动态性和共享性 D.数据的独立性和共享性 三、多选题 1.与数据库技术密切相关的基本概念有(ABCD) A. 数据 B. 数据库 C. 数据库管理系统 D. 数据库系统 2.数据库可分为哪几种类型?(ABC) A. 关系型数据库 B. 网状数据库 C. 层次数据库 D.树形数据库 3. DBMS提供数据操作语言DML,为用户提供了哪些操作?(ABCD) A.数据的追加B.数据的删除C.数据的更新D.数据的查询 4.DBMS要分类组织、存储和管理各种数据,包括哪些内容?(ABC) A. 数据字典 B. 用户数据 C. 存取路径 D.服务器 5. 目前,DBMS常见品牌有哪些公司?(ABC) A.微软公司的SQL Server B.IBM公司的DB2 C.甲骨文公司的ORACLE D.索尼公司的MySQL 四、填空题 1.数据库(管理)技术经历了人工管理阶段和文件管理阶段。 2.文件系统不提供对任意部分数据的(快速)访问 3.关系数据库,是建立在关系(模型)基础上的数据库。 4.实体-联系模型(简称E-R模型)是由P.P.Chen于(1976)年首先提出的。

数据库基础操作语句

一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2…from tab_old definition only 5、说明:删除新表 drop table tabname 6、说明:增加一个列 Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar 类型的长度。 7、说明:添加主键:Alter table tabname add primary key(col) 说明:删除主键:Alter table tabname drop primary key(col) 8、说明:创建索引:create [unique] index idxname on tabname(col….) 删除索引:drop index idxname 注:索引是不可更改的,想更改必须删除重新建。 9、说明:创建视图:create view viewname as select statement 删除视图:drop view viewname 10、说明:几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围 查找:select * from table1 where field1 like ’%value1%’---like的语法很精妙,查资料! 排序:select * from table1 order by field1,field2 [desc] 总数:select count as totalcount from table1 求和:select sum(field1) as sumvalue from table1 平均:select avg(field1) as avgvalue from table1 最大:select max(field1) as maxvalue from table1 最小:select min(field1) as minvalue from table1 11、说明:几个高级查询运算词 A:UNION 运算符

数据库原理实验报告(数据查询)

数据库原理实验报告 实验三数据查询 班级:××× 姓名:××× 学号:××× 数据查询 一、[实验目的] 1.掌握SQL的单表查询操作

2.掌握SQL的连接查询操作 3.掌握SQL的嵌套查询操作 4.掌握SQL的集合查询操作 二、[实验内容] 本实验的主要内容是: 1.简单查询操作。包括投影、选择条件表达,数据排序,使用临时表等。 2.连接查询操作。包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。 3.在SQL Server查询分析器中,使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。 4.组合查询与统计查询。 (1)分组查询实验。该实验包括分组条件表达、选择组条件的表达方法。 (2)使用函数查询的实验。该实验包括统计函数和分组统计函数的使用方法。 (3)组合查询实验。 (4)计算和分组计算查询的实验。 三、[实验方法] 1.将查询需求用Transact-SQL语言表示。 2.在SQL Server查询分析器的输入区中输入Transact-SQL查询语句。 3.设置查询分析器结果区为Standard Execute(标准执行)或Execute to Grid方式。 4.发布执行命令,查看查询结果;如果结果不正确,进行修改,直到正确为止。 5 查询分析器的主要作用是编辑Transact-SQL,将其发送到服务器,并将执行结果及分析显示出来(或进行存储)。查询分析功能主要是通过测试查询成本,判断该查询是否需要增加索引以提高查询速度,并可以实现自动建立索引的功能。 图5- 错误!未定义书签。SQL Server 2000查询分析器 查询分析器的界面如图5- 错误!未定义书签。所示。在查询生成器中的左边窗口是对象浏览器,其中按树结构列出了数据库对象;右上方是SQL代码区域,用于输入SQL的查

西北工业大学数据库实验报告

1.利用图形用户界面创建,备份,删除和还原数据库和数据表(50分,每小题5分) ●数据库和表的要求(第五版教材第二章习题 6 要求的数据库) 数据库名:SPJ,其中包含四张表:S表, P表, J表, SPJ表 ●完成以下具体操作: (1)创建SPJ数据库,初始大小为 10MB,最大为50MB,数据库自动增长,增长方 式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。 数据库的逻辑文件名和物理文件名均采用默认值。 (2)在SPJ数据库中创建如图2.1-图2.4的四张表(只输入一部分数据示意即可)。 S表: P表: J表: SPJ表:

(3)备份数据库SPJ(第一种方法):备份成一个扩展名为bak的文件。(提示: 最好先删除系统默认的备份文件名,然后添加自己指定的备份文件名) (4)备份数据库SPJ(第二种方法):将SPJ数据库定义时使用的文件(扩展名为 mdf,ldf的数据文件、日志文件等)复制到其他文件夹进行备份。 原位置: 新的位置: (5)删除已经创建的工程项目表(J表)。 (6)删除SPJ数据库。(可以在系统默认的数据存储文件夹下查看此时SPJ数据 库对应的mdf,ldf文件是否存在) 删除过后文件不存在 (7)利用备份过的bak备份文件还原刚才删除的SPJ数据库。(还原数据库)

(8)利用备份过的mdf,ldf的备份文件还原刚才删除的SPJ数据库。(附加) (9)将SPJ数据库的文件大小修改为100MB。 (10)修改S表,增加一个联系电话的字段sPhoneNo,数据类型为字符串类 型。 2.利用SQL语言创建和删除数据库和数据表(50分,每小题5分) ●数据库和表的要求 数据库名:Student,其中包含三个表:S:学生基本信息表;C:课程基本信息表;SC:学生选课信息表。 ●完成以下具体操作: (1)用SQL语句创建如图2.5-图2.7要求的数据库Student,初始大小为20MB, 最大为100MB,数据库自动增长,增长方式是按10M兆字节增长;日志文件初

C大作业图书管理系统实验报告

附件1: 学号:00126 《面向对象程序设计》 大作业 题目学生成绩管理系统 学院文法学院 专业教育学 班级教育学1201 姓名杨欣 指导教师鄢红国 2013 年12 月20 日

目录 一设计目的 (1) 二大作业的内容 (2) 三大作业的要求与数据 (3) 四大作业应完成的工作 (4) 五总体设计(包含几大功能模块) (5) 六详细设计(各功能模块的具体实现算法——流程图) (6) 七调试分析(包含各模块的测试用例,及测试结果) (7) 八总结 (8) 十参考资料 (9)

一大作业的目的 《面向对象程序设计》是一门实践性很强的课程,通过大作业不仅可以全方位检验学生知识掌握程度和综合能力,而且还可以进一步加深、巩固所学课程的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。更好地掌握运用C++语言独立地编写、调试应用程序和进行其它相关设计的技能。 二大作业的内容 对图书信息(包括编号、书名、总入库数量、当前库存量、已借出本数等)进行管理,包括图书信息的输入、输出、查询、删除、排序、统计、退出.将图书的信息进行记录,信息内容包含:(1)图书的编号(2)图书的书名(3)图书的库存量。假设,现收集到了一个图书馆的所有图书信息,要求用C语言编写一个简单的图书管理系统,可进行录入、查询、修改和浏览等功能。学习相关开发工具和应用软件,熟悉系统建设过程。 三大作业的要求与数据 1、用C语言实现系统; 2、对图书信息(包括编号、书名、总入库数量、当前库存量、已借出本数)进行管理,包括图书信息的输入、输出、查询、删除、排序、统计、退出. 3、图书信息包括:其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能: (1) 每一条记录包括一本图书的编号、书名、库存量 (2) 图书信息录入功能:(图书信息用文件保存,可以一次完成若干条记录 的输入。) (3) 图书信息显示浏览功能:完成全部图书记录的显示。 (4) 查询功能:完成按书名查找图书记录,并显示。 (5) 图书信息的删除:按编号进行图书某图书的库存量. (6) 借书登记系统:可以输入读者编号和所借书号来借书。 (7) 还书管理系统:可以输入读者编号和所借书号来还书。 (8)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!

sql数据库示例,适合初学者

一、数据库概述 数据库(DataBase,DB):指长期保存在计算机的存储设备上,按照一定规则组织起来,可以被各种用户或应用共享的数据集合。(文件系统) 数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中的数据。 数据库软件应该为数据库管理系统,数据库是通过数据库管理系统创建和操作的。 数据库:存储、维护和管理数据的集合。 二、数据库的安装与配置 * 安装 * 参照图解 * 一路下一步 * 配置 * 参照图解 * 到选择字符集时停 登录Mysql: mysql -u root -p abc * 卸载 1.停止mysql服务net stop mysql 启动mysql服务net start mysql 2.卸载mysql 3.找到mysql 安装目录下的my.ini datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/" * 修改密码 运行cmd * 安装成功了打开cmd --> mysql -uroot -p你的密码 * 修改mysql root用户密码 1) 停止mysql服务运行输入services.msc 停止mysql服务 或者cmd --> net stop mysql 2) 在cmd下输入mysqld--skip-grant-tables 启动服务器光标不动(不要关闭该窗口) 3) 新打开cmd 输入mysql -u root -p 不需要密码

MYSQL数据库基本操作命令

MYSQL数据库基本操作命令 用户名和密码:123456 创建一个名称为mydb1的数据库。 create database mydb1; 查看所有数据库 show databases; 创建一个使用utf-8字符集的mydb2数据库。 create database mydb2 character set utf8; 创建一个使用utf-8字符集,并带校对规则的mydb3数据库。 create database mydb3 character set utf8 collate utf8_general_ci; 显示库的创建信息 show create database mydb3; 删除前面创建的mydb1数据库 drop database mydb1; 查看服务器中的数据库,并把其中某一个库的字符集修改为gb2312; alter database mydb2 character set gb2312; show create database mydb2; 备份库 1、准备库的数据 create database mydb1; use mydb1; create table test ( id int ); insert into test(id) values(1); select * from test; 2、删除库:drop database mydb1; 3、 4.1 创建库:create database mydb1; 4.2 \. test.sql (通过执行脚本文件实现) 5、

创建一个员工表 use mydb1; 进入库 create table employee ( id int, name varchar(20), gender varchar(4), birthday date, entry_date date, job varchar(40), salary double, resume text )character set utf8 collate utf8_general_ci; 查看库中所有表 show tables; 查看表的创建细节 show create table employee; 查看表的结构 desc employee; 在上面员工表的基本上增加一个image列。 alter table employee add image blob; 修改job列,使其长度为60。 alter table employee modify job varchar(60); 删除sex列。 alter table employee drop gender; 表名改为user。 rename table employee to user; 修改表的字符集 alter table user character set gb2312; show create table user; 列名name修改为username alter table user change column name username varchar(20); 使用insert语句向表中插入一个员工的信息。 insert into employee(id,username,birthday,entry_date,job,salary,resume)

数据库数据查询实验报告

师学院数学与计算机科学学院 《数据库》实验报告 实验序号:07 实验项目名称:数据查询 学号2014210758 姓名邹业安专业、班级14信科 实验地点222 指导教师褚万军时间2017.6.07 一、实验目的及要求 ?掌握从简单到复杂的各种数据查询。包括:单表查询、多表连接查询、嵌套查询、集合查询。 ?掌握用条件表达式表示检索条件。 ?掌握用聚合函数计算统计检索结果。 二、实验设备(环境)及要求 1、环境要求: 硬件:PC(PII以上,128M以上存)、因特网接入; 软件:在SQL Server 2000中 三、实验容与步骤 1、一般简单查询 (1)不带条件的查询指定字段(考虑去掉和不去掉重复值两种情况)。select distinct 学号 from 选课 select 学号 from 选课

(2)查询某个表中的所有记录查询教师表中的所有记录 (3)使用单个条件的简单查询查询成绩大于50的学生的学号select 学号 from 选课where 成绩>50

(4)使用多个条件(AND关系)的查询 select工资 from教师 where工资>200 and工资<500 (5)使用多个条件(OR关系)的查询 select工资 from教师 where工资<200 or工资>500 (6)使用多个条件(混合AND和OR关系)的查询 select*from学生 where (院系='2'and生源='')or(院系='6'and生源='') (7)使用带NOT运算的查询

where not (生源='') (8)使用BETWEEN???AND???的查询 select * from 选课 where 成绩 between 86 and 93 (9)使用NOT???BETWEEN???AND???的查询select * from 选课 where 成绩 not between 76 and 93 (10)使用LIKE运算符的字符串匹配查询。

数据库实验报告

数据库实验报告

武汉理工大学 学 生 实 验 报 告 书 实验课程名称 数据库系统概论 开 课 学 院 计算机科学与技术学院 指导老师姓名 学 生 姓 名 学生专业班级 学生学号 实验课成绩

2013 — 2014 学年第二学期实验课程名称:数据库系统概论 实验项目名称SQL SEVER 2000的系 统工具及用户管理 实验 成绩 实验者专业班 级 组别 同组者实验 日期 2014年4 月24日

第一部分:实验分析与设计(可加页) 一、实验内容描述(问题域描述) 实验目的和要求:了解SQL SEVER 2000的功能及组成,熟练掌握利用SQL SEVER 2000工具创建数据库、表、索引和修改表结构及向数据库输入数据、修改数据和删除数据的操作方法和步骤,掌握定义数据约束条件的操作。 二、实验基本原理与设计(包括实验方案设计,实 验手段的确定,试验步骤等,用硬件逻辑或者算法描述) 实验内容和步骤: (1)熟悉SQL SEVER 2000的界面和操作。 (2)创建数据库和查看数据库属性。 (3)创建表、确定表的主码和约束条件。 (4)查看和修改表的结构。 (5)向数据库输入数据,观察违反列级约束时出现的情况。 (6)修改数据。 (7)删除数据,观察违反表级约束时出现的情况。 三、主要仪器设备及耗材 Windows XP SQL SERVER 2000

第二部分:实验调试与结果分析(可加页) 一、调试过程(包括调试方法描述、实验数据记录, 实验现象记录,实验过程发现的问题等) 没有错误 错误:未能建立与WORKEPLACE\XUMENGXING的链接SQL Server 不存在或访问被拒绝 原因:未启动数据库服务 二、实验结果及分析(包括结果描述、实验现象分 析、影响因素讨论、综合分析和结论等) 实验结果部分截图:

sql大作业实验报告

目录 第一章、需求分析 (2) 1 、需求概述 (2) 2 、功能简介 (2) 第二章、概念结构设计 (3) 1、在员工实体内的E-R图 (3) 2、部门实体内的E-R图 (3) 3、在工资实体内的E-R图 (3) 第三章、逻辑结构设计 (4) 第四章、物理结构设计 (4) 第五章、数据库的实施和维护 (5) 一、数据库的创建 (5) 二、表格的建立 (5) 1、建立Employsse表插入数据并设计相关的完整性约束 (5) 2、建立departments表插入数据并设计相关的完整性约束 (7) 3、建立 salary表插入数据并设计相关的完整性约束 (8) 三、建立视图 (9) 四、建立触发器 (10) 五、建立自定义函数 (12) 六、建立存储过程 (13) 第六章、总结 (14)

第一章、需求分析 1 、需求概述 针对现代化公司管理情况,员工管理工作是公司运行中的一个重环节,是整个公司管理的核心和基础。它的内容对于公司的决策者和管理者来说都至关重要,所以公司管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件工籍,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 公司员工管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。 能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理的相应时间要短。 具体功能包括:系统应该提供员工数据的插入、删除、更新、查询;员工基本信息查询的功能。 2 、功能简介 员工管理系统它可以有效的管理员工信息情况。具体功能有以下几个方面。基本信息的添加,修改,删除和查询。学生信息管理包括添加、查看学生列表等功能。

一个完整的数据库示例--说明

一、表的结构及完整性约束 新建一个数据库jxsk,包括S、C、SC、T、TC五个表,结构如下:C表: S表: SC表: T表:

TC表: 二、安全性控制及视图机制 1、三类角色:depart、teacher、student depart的权限: teacher的权限:

student的权限: 2、有2个院系用户:d_jsj,d_xx,同属于depart角色。

有1个教师用户:t ,属于teacher 角色。

有一个学生用户:s,属于student角色。 3、创建计算机系教师视图t_view_jsj、计算机系学生视图s_view_jsj,并授予d_jsj 用户在这两个视图上的select、delete、update、insert权限。 计算机系教师视图t_view_jsj: create view t_view_jsj as select tno,tn,sex,age,prof,sal,comm,dept from t where dept='计算机' with check option

授予d_jsj用户在计算机系教师视图t_view_jsj 上的select、delete、update、insert 权限: grant select,update,delete,insert on t_view_jsj to d_jsj 计算机系学生视图t_view_jsj: create view s_view_jsj as select sno,sn,sex,age,dept,resume,native from s where dept='计算机' with check option 授予d_jsj用户在计算机系学生视图s_view_jsj 上的select、delete、update、insert 权限: grant select,update,delete,insert on s_view_jsj to d_jsj …… 4、创建一个视图,显示学号,姓名,院系,课程名,成绩。 create view score_view(学号,姓名,院系,课程名,成绩) as select s.sno,sn,dept,cn,score from s,sc,c where s.sno=sc.sno and https://www.360docs.net/doc/b710220163.html,o=https://www.360docs.net/doc/b710220163.html,o 三、完整性控制--触发器、规则 1、要求当删除C表中某课程信息时,同时删除SC和TC中与此课程相关的记录。create trigger c_delete_trigger on c after delete as delete from sc where cno in (select cno from deleted) delete from tc where cno in (select cno from deleted) go

数据库基本操作习题与答案

第三章数据库基本操作 一、选择题 1. 如果需要给当前表增加一个字段,应使用的命令是________。 A) APPEND B) INSERT C) EDIT D) MODIFY STRU 2. 设表文件及其索引已打开,为了确保指针定位在物理记录号为1的记录上,应该使用命令________。 A) SKIP 1 B) SKIP -1 C) GO 1 D) GO TOP 3. 要显示数据库中当前一条记录的内容,可使用命令________。 A) LIST B) BROWSE C) TYPE D) DISPLAY 4. 在当前表中,查找第2个女同学的记录,应使用命令________。 A) LOCATE FOR 性别="女" B) LOCATE FOR 性别="女" NEXT 2 C) LIST FOR 性别="女" CONTINUE D) LOCATE FOR 性别="女" CONTINUE 5. Visual FoxPro的数据库表之间可建立两种联系,它们是________。 A) 永久联系和临时联系B) 长期联系和短期联系 C) 永久联系和短期联系D) 长期联系和临时联系 6. 数据库表的索引中,字段值不能有重复的索引有________种。 A) 1 B) 2 C) 3 D) 4 7. 建立表间临时关联的命令是________。 A) LET RELATION TO命令 B) JOIN命令 C) SET RELATION TO命令 D) 以上都不是 8. 通过关键字建立表间的临时关联的前提是________。 A) 父表必须索引并打开B) 子表必须索引并打开 C) 两表必须索引并打开D) 两表都不必索引 9. 查询设计器的“筛选”选项卡上,“插入”按钮的作用是________。 A) 用于增加查询输出字段B) 用于增加查询的表 C) 用于增加查询去向D) 用于插入查询输出条件 10. 在多工作区的操作中,如果选择了4,7,8号工作区并打开了相应的数据库,在命令窗口执行命令SELECT 0,其功能是________。 A) 选择4号工作区为当前工作区B) 选择0号工作区为当前工作区 C) 选择7号工作区为当前工作区D) 选择8号工作区为当前工作区 11. 表结构中空值(NULL)的含义是________。 A) 空格B) 尚未确定

SQL查询—— 简单查询实验报告书

实验题目:SQL查询——简单查询 【实验目的与要求】 一、实验目的 1. 熟练掌握单表查询的SELECT语法结构; 2. 通过观察查询结果, 体会SELECT语句的实际应用。 二、实验要求 1.实验前做好上机实验的准备,针对实验内容,认真复习与本次实验有关的知识,完成实验 内容的预习准备工作。 2.能认真独立完成实验内容。 3.实验后做好实验总结,根据实验情况完成实验报告。 【实验环境】 PC机、Windows XP系统+SQL Server 2005 【实验内容】 基于实验一建立的EDUC 数据库,用Transact-SQL 语句实现如下查询: 1.选修了课程的学生学号; 2.计算机系的学生; 3.计算机系学生的学号和姓名; 4.计算机系和信息系的男生信息;(提示:逻辑运算符的优先级顺序) 5.选修上课编号为1且成绩在80-90 之间的学生学号和成绩,并将成绩乘以系数0.75 输出; (提示:新输出项要命名列标题) 6.没有成绩的学生的学号和上课编号; 7.选修上课编号为1或4的学生的学号和成绩,并要求对查询结果按成绩的降序 排列,如果成绩相同则按学号的升序排列;(提示:查询输出哪几项) 8.1995年1月1日(含)以后出生的学生信息,并按姓氏拼音字母顺序从前往后排列(注: 默认排序规则通常是Chinese_PRC_CI_AS,汉字按照汉语拼音的字典顺序来排序:首先按拼音,拼音相同按声调,声调相同按笔画数。)

9.姓李和刘的学生的信息; 10.不姓张王李刘的学生的学号、姓名和性别; 11.选修课程的学生人数; 12.选修上课编号为1的学生的最高分; 13.每位学生所修课程的平均分; 14.选修两门以上课程的学生; 15.总成绩大于200 分的学生的学号和总成绩。(提示:group by分组统计)【实验方法和步骤】 1.新建查询,在查询编辑器中依次按照如上实验内容编写SELECT语句完成查询。

黑大数据库实验报告

黑龙江大学 “数据库系统原理课程设计”总结报告 学院软件学院 年级2014级 专业软件工程 学号20143983 姓名陆芝浩 报告日期2016.11.9 成绩 黑龙江大学软件学院

1、开发环境 操作系统:Windows7 编程语言环境:VC++6.0 2、DBMS系统架构 3、DBMS主要功能模块 1、实现SQL语句中的Create Table建表语句,建立相应的数据库表,并生成相应的数据字典文件和数据文件。 2、实现alter table表模式的修改功能: ①能够为已建立的表添加属性。 ②能够从已建立的表中删除属性。

3、实现drop table删除表功能。 4、实现create index创建索引的功能。 5、实现drop index删除索引的功能。 6、实现insert可以向已经创建的表插入元组。 7、实现delete从已经创建的表中删除元组。 8、实现update修改表中的数据。 9、实现SELECT语句,包括: 实现单表全属性查询。 实现单表单属性查询。 实现多表的连接全属性查询。 实现多表的连接和选择条件的全属性查询。 实现多表的连接的单属性查询。 实现多表的连接和选择的单属性查询。 实现单表的选择的单属性查询。 实现单表的选择的全属性查询。 10、利用启发式关系代数优化算法进行查询优化。 11、建立访问权限,根据数据字典(DD)实现对数据库的安全性检查和完整性约束的机制。 3.1 SQL语言的词法和语法分析 (1)功能介绍 通过编译原理的知识对输入的SQL语句进行词法分析,将SQL语句拆分为若干个单词,对其进行语法分析,确定输入的SQL语句的含义. (2)相关理论 利用编译原理的相关知识,对输入的SQL语句进行模仿SQL语言的词法及语法结构的分析。

Java程序设计大作业实验报告

目录 一、前言 (2) 二、需求分析 (3) 三、系统总体设计 (3) 3.1系统总体设计系统思路 (3) 3.2数据库设计 (4) 3.2.1 login1表的设计和数据 (4) 3.2.2 student表的设计和数据 (5) 3.2.3 course表的设计和数据 (5) 3.2.4 score表的设计和数据 (6) 3.3系统功能模块设计 (6) 四、系统详细设计 (7) 4.1登录模块 (7) 4.2 学生模块 (7) 4.3 教师模块 (8) 4.4 管理员模块 (8) 五、系统测试及运行结果 (9) 5.1 主界面 (9) 5.2 学生管理中心界面 (9) 5.3 教师管理中心界面 (10) 5.4 管理员管理中心界面 (10) 5.5 查询课表界面 (11) 5.6 查询成绩界面 (11) 5.7 查询教学情况界面 (11) 5.8 查询所有学生成绩界面 (12) 5.9 学生信息管理界面 (12) 5.10 学生成绩管理界面 (13) 5.11 用户管理界面 (13) 六、实验总结 (14) 七、参考文献 (14)

一、前言 随着计算机在人们生活中的普及和网络时代的来临,对信息的要求日益增加,学生信息管理业务受到了较为强烈的冲击,传统的手工管理方式传统的手工管理方式已不能适应现在的信息化社会。如何利用现有的先进计算机技术来解决学生信息管理成为当下的一个重要问题,学生信息管理系统是典型的信息管理系统,其开发主要就是针对前台的页面展示以及后台数据的管理。对于前者,要求应用程序功能完备,易于使用,界面简单;而对于后者,则要求数据库具有一致性、完整性,并能够依据前台的操作来对应操作后台数据库达到一定的安全性。 本学生信息管理系统主要采用的纯JAVA代码实现图形界面系统的开发,以及数据库知识进行数据的查询,删除,插入和更新。本系统主要分为三个部分:学生模块、教师模块、管理员模块。其中学生模块实现的功能:查询课表信息和查询成绩。教师模块实现的功能:查询课表信息、查询教学情况和查询所有学生的各科成绩。管理员模块实现的功能:课表信息的管理、学生信息管理、学生成绩管理和用户信息管理。

JAVA数据库基本操作增删改查(精)

JAVA 数据库基本操作, 增删改查 package mypack; JAVA 数据库基本操作, 增删改查 import java.sql.Connection; import java.sql.ResultSet; import java.util.ArrayList; public class DbOper {//查询多行记录public ArrayList select({Connection conn =null; ResultSet rs =null; try {import java.sql.PreparedStatement; import java.sql.SQLException; PreparedStatement pstmt =null; ArrayList al =new ArrayList(; conn =DbConn.getConn(;pstmt =conn.prepareStatement(“select *from titles ”; rs =pstmt.executeQuery(;while (rs.next({Titles t =new Titles(;t.setTitleid(rs.getString(1;t.setTitle(rs.getString(2;al.add(t;}}catch (SQLExceptione { e.printStackTrace(;}finally {try {//TODO 自动生成catch 块if (rs!=null rs.close(;if (pstmt!=nullpstmt.close(;if (conn!=nullconn.close(;}catch (SQLExceptione { e.printStackTrace(;}}//TODO 自动生成catch 块 return al; }//查询单个对象public Titles selectOne(Stringtitleid{Connection conn =null; ResultSet rs =null; try {PreparedStatement pstmt =null; Titles t =new Titles(;

实验报告 数据库的基本查询'

一、实验目的: 通过该实验掌握应用SQL 查询数据库的基本方法,包括单表、多表查询。 二、实验原理 数据库查询是数据库的核心操作。SQL语言提供了SELECT语句进行数据库的查询。 SELECT[ALL|DISTINCT] <目标列表达式〉[,<目标列表达式〉]... FROM<表名或视图名〉[,<表名或视图名〉]... [WHERE<条件表达式>] [GROUP BY<列名1〉[HA VING<条件表达式>]] [ORDERBY<列名2〉[ASC|DESC]] 三、实验内容和方法 实验用的数据库:用实验二建立的数据库:School 1. 投影查询 (1) 查询SC表的sno的不重复记录。 使用SQL语句:“select distinct Sno from SC”,得出结果如下图所示: (2) 改变查询结果的标题名:sno为学号,sname为姓名,ssex 为性别,sdept 为系名。 使用SQL语句:“select Sno 学号,Sname 姓名,Ssex 性别,Sdept 系名from Student”,得出结果如下图所示:

(3) 查询STUDENT表的前3条记录(top 3)。 使用SQL语句:“select top 3 * from Student”,得出结果如下图所示: 3. 选择查询 (1) 查询成绩在60-80之间的姓名、系名和成绩。 使用SQL语句:“select Sname,Sdept,Grade from Student,SC where Grade>60 and Grade<80 and Student.Sno=SC.Sno”,结果如下图所示: 若使用SQL语句:“select Sname,Sdept,Grade from Student,SC where Grade between 60 and 80 and Student.Sno=SC.Sno”,则结果如下图所示: (2) 查询信息系和计算机系的姓名和成绩。 使用SQL语句:“select Sname,Grade from Student,SC where Sdept='IS' and Student.Sno=SC.Sno or Sdept='CS' and Student.Sno=SC.Sno”,结果如下图所示:

数据库实验报告

武汉轻工大学 数学与计算机学院 《数据库系统概论》 实验报告 题目:SQL操作 专业:信息管理与信息系统 班级:信息管理1201班 学号:1205020113 姓名:丁兵兵 指导老师:欧阳铮铮 2014年 6 月13 日

实验一注册服务器、建立数据库 一、实验目的 1.学会注册、连接服务器 2.学会创建登录、建立数据库 3.学会为数据库创建和设置用户 二、实验内容 1.使用企业管理器注册、连接SQL数据库服务器 2.使用企业管理器建立数据库 3.使用企业管理器创建登录 4.使用企业管理器为数据库创建用户并设置其权限 三、实验准备 1.复习与本次实验内容相关知识 2.预习有关登录的建立等相关内容 四、实验步骤 1.启动SQL Server Management Studio 启动过程为:开始菜单-->程序-->Microsoft SQL Server-2005->SQL Server Mangement Stadio。

2.注册服务器 3连接SQL服务器 4.建立登录帐号 5.建立数据库 6.账户权限 五、实验结果

通过这次实验了解关于SQL最基本的操作,注册、连接服务器、创建登录、建立数据库、为数据库创建和设置用户等。虽然中途出现过一点小问题,但通过耐心比照实验步骤,还是解决了。 实验二表的创建与修改 一、实验目的 1.学会创建和修改表结构 o学会使用数据库引擎查询 2.学会使用SQL语句创建和修改表结构 二、实验内容 1.利用窗口建立和修改班级表、成绩表 2.利用命令建立和修改课程表、学生表

1.复习与本次实验内容相关知识 2.对本次实验中要求自己完成的部分做好准备 四、实验步骤 1.创建表 o打开SQL Server Management Studio,数据库服务器连接以后,展开该服务器项目,其下有子项目"数据库",选择该项目后,右击 该项目,或者在右面的子窗口中右击,在弹出菜单中有"新建数据 库"(数据库名为学生自己的学号)。 o打开新数据库的树型列表,在"表"上右击,在快捷菜单中单击"新建表..."。 o在表结构窗口内建立如下图所示的班级表(CID含义为"班号 ",CLASS含义为"班名",DEPARTMENT含义为所在系,各字段类型 及是否允许为空按图中设置),如下图所示,左侧三角形标志为当 前列,下方的列属性即为该列的。

相关文档
最新文档