搜档网
当前位置:搜档网 › 数据库实验报告

数据库实验报告

数据库实验报告
数据库实验报告

实验目的:

1、掌握创建数据库的方法,学会用企业管理器和sql语言两种方法新建表;

2、掌握用企业管理器和sql语言两种方法创建约束条件;

3、掌握数据库中表的维护方法(包括新建表、删除表、在表内增加列等);

4、掌握三种数据的导入方法并通过一些操作观察约束条件的效果;

5、掌握基本的sql语言。

一、实验环境:

本实验是在Windows XP操作系统下的Microsoft SQL sever2000软件中进行的。

二、主要设计思想与实验步骤:

1、设计思想:

通过创建一个关于教材、老师、学生、课程的数据库并创建这些关系的

表,并基于这些表的创建约束条件、导入数据、修改数据等操作熟悉数

据库的创建与维护。

2、设计的实验数据表格:

3、实验步骤:

①首先在企业管理器中创建数据库并命名;

②在该数据库中创建8张表(分别用企业管理器和SQL语言创建,并确

定各列属性约束);

③向表中导入excel的数据;

④基于已创建的数据库和表进行一系列的维护工作,熟悉SQL语句和约

束的效果。

三、实验结果:

1、创建表:

①用企业管理器创建:

步骤:先打开创建的数据库(创建了名为“教材—学生—老师—课程”的数据库),点击该数据库下拉列表中的表,并在右侧表中单击右键选择”新建表”选项在打开的窗口中对应填上所建表的每一列的表属性名,并可选择数据类型以及是否允许空等。新建表的列属性截图如下左,建好的表的列属性如下右:

②用SQL语言创建表:

所写SQL语句如下:

1、创建表5department

create table B_5department(

department_id varchar(50) primary key clustered,

department_name varchar(50),

department_header varchar(50),

teacher_num int)

2、创建表6 student表:

create table B_6student(

student_id varchar(50) primary key clustered,

student_name varchar(50) NOT NULL,

sex int,

birth smalldatetime,

class_id varchar(50),

entrance_date smalldatetime,

home_addr varchar(50),

constraint c1 foreign key(class_id)references B_3class(class_id))

3、创建表7 student_course表:

create table B_7student_course(

course_id varchar(50),

student_id varchar(50),

grade int,

credit int,

semester smallint,

school_year varchar(20),

constraint c2 primary key(course_id,student_id),

constraint c3 foreign key(course_id)references B_2course(course_id),

constraint c4 foreign key(student_id)references B_6student(student_id))

4、创建表8teacher表:

create table B_8teacher(

teacher_id varchar(50) primary key,

teacher_name varchar(50)not null,

sex smallint,

birth datetime,

department_id varchar(50),

profession varchar(50),

telephone decimal,

home_addr varchar(50),

postalcode int,

constraint c5 foreign key(department_id)references B_5department(department_id))

5、创建表9 teacher_course_class:

create table B_9teacher_course_class(

teacher_id varchar(50),

course_id varchar(50),

class_id varchar(50),

semester smallint not null,

school_year varchar(20),

course_schedule int,

course_classroom varchar(50),

book_id varchar(50),

constraint c6 foreign key(book_id)references B_1book(book_id),

constraint c7 foreign key(teacher_id)references B_8teacher(teacher_id),

constraint c8 foreign key(course_id)references B_2course(course_id),

constraint c9 foreign key(class_id)references B_3class(class_id),

constraint c10 primary key(teacher_id,course_id,class_id))

实验结果:

创建好的表截图如下:

在创建表时已经定义了外键并定义了部分属性的约束条件。

2、导入数据:用Transact-SQL语句、数据导入、企业管理器输入的方法对所给定的9张表的数据输入到数据库中。自行决定每张表的数据导入办法,但每种方法各征对三张表。

①企业管理器导入数据方法:采用的是直接利用excel导入,具体操作为,在需要导入数据的表点击右键并选择“所有任务”—“导入数据”—之后过程见图示:

选择如上后,单击下一步;

单击下一步:

下一步:(选中sheet1并选择目的表,可单击预览查看数据是否正确)

如图所示数据成功导入。

②直接数据导入:在企业管理器中,鼠标选中对应表单击右键,选择“打开表”,“返回所有行”,则可打开表并可一条一条键入数据。

③用SQl语言导入数据:

insert

into

TABLE1(teacher_id,course_id,class_id,semester,school_year,course_schedule,cou rse_classroom,book_id)

values('dep01_001','dep01_s001','g99101',1,'1999/2000',110310510,'教学楼201','dep01_s001_01')

3、对Course表建立如下约束:course_name非空,credit取值在1-6之间(并通过修改credit的值和插入course_name为空的行,观察DBS反应)

Sql语句如下:

①credit取值在1-6之间:

alter table B_2course

add constraint B1 check (credit between 1 and 6)

②course_name非空:(可直接用企业管理器修改,右键单击该表并选择“设计表”,在需要修改的列中设置非空即可)

实验结果及验证:

I用Transact-SQL修改Course表中credit为5的记录,将其credit改为7, credit 小于4的改为2,看运行的结果

Sql语句如下:

i、update B_2course

set credit=7

where credit=5;

运行结果如下:报错了,原因是与约束B1冲突。

ii、update B_2course

set credit=2

where credit<4;运行结果:执行成功,修改了一行的credit值。执行操作和执行后表如下:

由图可见,倒数第二行原credit值为3改为了2.

由以上操作及执行结果可见所设约束B1的效果。

II用Transact-SQL向Course表中插入一条记录,course_name为空,看运行的结果

course插入值时name未插入,编译通过,图如下:

course中插入行时未定义name,执行结果报错,截图如下:

4、修改Student和teacher表,分别增加一列用于存储学生和教师的E_mail地址:

Sql语句如下:

①alter table B_6student

add E_mail varchar(50)

②alter table B_8teacher

add E_mail varchar(50)

实验结果如下:(student表中增加一列email,由截图可见该列所有值全为null)

(teacher表中增加一列email,该列所有值全为null)

5、创建Course2表,与course表结构一样,删除course2表。分别用企业管理器和Transact-SQL语句完成。

步骤:用企业管理器:先打开“教材—学生—老师—课程”的数据库,点击该数据库下拉列表中的表,并在右侧表中单击右键选择新建表选项在打开的窗口中对应填上所建表的每一列的表属性名,并可选择数据类型以及是否允许空等。删除时直接在该表上点右键,选择删除即可。

用Transact-SQL语句:

create table B_2course2(

course_id varchar(50) primary key clustered,

course_name varchar(50),

book_id varchar(50),

total_perior int,

week_perior int,

credit int)

删除表:drop table B_2course2

实验结果如下:(第三行为新增加的表course2)

6、删除一条学生记录,看运行结果,对运行结果进行分析。SQL语句:

delete

from B_6student

where student_id='g9940201';

查询分析器运行结果及分析:

7、用Transact-SQL完成将编号为dep04_b001的课程的选修信息插入到一个新的选课信息表中。

步骤:新建一个表并命名为“new_course_stu”。用SQL语言查找编号为dep04_b001的课程信息并导入新建的表。SQL语句如下:

insert

into new_course_stu

由左图结果可知,改命令不能执行,分析其原因在于该表与其他表相关联,其主键student_id是表B_7student_course的外键student_id的参照外键,这个约束关系C4约束了数据库不执行删除学生记录的命令。

select *

from B_7student_course

where course_id='dep04_b001';

执行结果如下:(可见该表中新增的数据course_id均为dep04_b001)

8、用Transact-SQL完成删除单片机原理课程的选课信息,分析运行结果。SQL语句如下:(在查询分析器中输入以下语言,先点击“分析查询”在点击“执行查询”即可完成操作)

delete

from B_7student_course

where course_id=(select course_id

from B_2course

where course_name='单片机原理');

运行结果如下:(见下图)

结果分析:执行过程是现在B_2course中查找course_name为“单片机原理”对应的course_id,返回值dep04_s003,再在表B_7student_course中查找course_id 为“dep04_s003”的数据行并删除该行。可见下图中无course_id为“dep04_s003”的数据了,可见执行成功。

四、实验总结:

通过本实验熟悉了Microsoft SQL sever2000软件并掌握了Transact-SQL语言,对数据库这门课程有了更深刻的理解,在实际应用软件和语言时也发现了自己学习的不足之处,通过多次尝试写语句和分析结果以及报错原因等锻炼了自己纠错检错的能力。

本实验中出现的问题如下:

1、导入数据时:①原先设置C3的外键约束,以为book2和book7中的course_id是主键外键关系,但是老师给的数据中book2中的course_id与book7中的不匹配,盲目的设置的外键约束后,在导入数据时,系统提示不匹配,经过仔细检查后,取消了C3这个约束(直接在企业管理器的表book7的列属性关系中删除了该约束); ②导入book9的数据时,机器发现主键有重复,(原主键为teacher_id,course_id,class_id)经检查后,发现有两行数据的这三个值均相同,所以增加了主键(book_id)

2、语句使用不熟练,在查询分析器写SQL语言时会报错,解决办法是分析出错原因并通过查询资料修改错误。

3、在查询分析器中新建表但是看到企业管理器中没有显示新表,于是又在查询分析器中执行分析一次,但是会报错,错误原因是已存在该表了。分析后发现,企业管理器需要刷新才可以显示新增内容。

SQL 数据库实验报告3

一、实验内容 (1)掌握在SQL Server管理平台中对表进行插入、修改和删除数据操作的方法。 (2)掌握使用Transact-SQL语句对表进行插入、修改和删除数据操作的方法。 二、实验器材(设备、元器件) Window7操作系统,SQL Server软件 三、实验步骤 (1)启动SQL Server管理平台,在对象资源管理器中展开studentsdb数据库文件夹。 (2)在studentsdb数据库中包含有数据表student_info、curriculum、grade,这些表的数据结构如图所示在studentsdb数据库中包含有数据表student_info、curriculum、grade,这些表的数据结构如图所示 (3)在SQL Server管理平台中创建student_info、curriculum表。 学生基本情况表student_info 课程信息表curriculum

①启动SQL Server管理平台,在对象资源管理器中展开studentsdb数据库文件夹。 ②在SQL Server管理平台中创建student_info表。 ③在SQL Server管理平台中创建curriculum表。 (4)使用Transact-SQL语句CREATE TABLE在studentsdb数据库中创建表 学生成绩表grade

①新建查询,输入Transact-SQL语句,点击执行 ②出现如下界面,学生成绩表grade建立成功 (5)在SQL Server管理平台中,将student_info表的学号列设置为主键,非空。

(6)student_info、curriculum、grade表中的数据如图所示。 student_info的数据 curriculum的数据 grade的数据 (7)在SQL Server管理平台中为student_info表添加数据

数据库实验报告

课程设计报告题目:数据库实验上机实验报告 专业班级:计算机科学与技术1210班 学号: U9 姓名:候宝峰 指导教师: 报告日期: 2015-06-04 计算机科学与技术学院

目录 一、基本SQL操作(部分选做)............. 错误!未定义书签。 1)数据定义........................... 错误!未定义书签。 2)数据更新........................... 错误!未定义书签。 3)用SQL语句完成下述查询需求:....... 错误!未定义书签。 二、DBMS综合运用(部分选做)............. 错误!未定义书签。 1)学习sqlserver的两种完全备份方式:数据和日志文件的脱机备份、系统的备份功能(选做)。......... 错误!未定义书签。 2)学习系统的身份、权限配置操作....... 错误!未定义书签。 3)了解SQLSERVER的存储过程、触发器、函数实现过程错误!未定义书签。 三、实验总结............................. 错误!未定义书签。 1)实验问题及解决..................... 错误!未定义书签。 2)实验心得........................... 错误!未定义书签。

一、基本SQL操作(部分选做) 1)数据定义 参照下面的内容建立自己实验所需的关系数据 创建三个关系: 商品表【商品名称、商品类型】 GOODS【GNAME char(20),GTYPE char(10)】 主关键字为(商品名称)。商品类型为(电器、文具、服装。。。) 商场【商场名称,所在地区】 PLAZA【PNAME char(20),PAREA char(20)】 主关键字为商场名称。所在地区为(洪山、汉口、汉阳、武昌。。。) 销售价格表【商品名称、商场名称、当前销售价格、目前举办活动类型】 SALE【GNAME char(20),PNAME char(20),PRICE FLOAT,ATYPE char(10)】主关键字为(商品名称、商场名称)。举办活动类型为(送券、打折),也可为空值,表示当前未举办任何活动。表中记录如(‘哈森皮靴’,‘亚贸广场’,200,‘打折’),同一商场针对不同的商品可能采取不同的促销活动。 create table goods(gname char(20) primary key,gtype char(10)); create table plaza(pname char(20) primary key,parea char(20)); create table sale (gname char(20), pname char(20), price FLOAT, atype char(10)check (atype in('送券','打折','')), primary key(gname,pname), foreign key(gname)references goods(gname), foreign key(pname)references plaza(pname)); 图1 goods表 图2 plaza表 图3 sale表 2)数据更新 (1)向上述表格中用sql语句完成增、删、个、改的操作;

《数据库技术与应用 》实验报告

《数据库技术与应用》上机实验报告 目录: 一、概述 二、主要上机实验内容 1.数据库的创建 2.表的创建 3.查询的创建 4.窗体的创建 5.报表的创建 6.宏的创建 三、总结 一、概述 (一)上机内容: 第七周:熟悉Access界面,数据库和表的创建,维护与操作 1. 熟悉Access的启动,推出,界面,菜单,工具栏等; 2. 练习使用向导创建数据库、创建空数据库; 3. 练习创建表结构的三种方法(向导、表设计器、数据表)、表中字段属性设置; 4. 练习向表中输入不同类型的数据; 5. 练习创建和编辑表之间的关系; 6. 练习表的维护(表结构、表内容、表外观) 7. 练习表的操作(查找、替换、排序、筛选等) 第八周:练习创建各种查询 1.选择查询(单表、多表、各种查询表达式) 2.参数查询 3.交叉表查询 4.操作查询(生成查询、删除查询、更新查询、追加查询) 第十周:练习创建各种类型的窗体 1.自动创建纵栏式窗体和表格式窗体; 2.向导创建主|子窗体

3.图表窗体的创建 4.练习通过设计器创建窗体 5.练习美化窗体 第十三周:练习创建各种类型的报表 1.自动创建纵栏式报表和表格式报表; 2.向导创建报表(多表报表、图表报表、标签报表) 3.练习通过设计视图创建报表(主|子报表、自定义报表) 4.练习在报表中添加计算字段和分组汇总数据 第十五周:综合应用 1.了解Access数据库系统开发的一般方法; 2.课程内容的综合练习; 3.编写上机实验报告、答疑 (二)上机完成情况 第七周:熟悉Access界面,数据库和表的创建,维护与操作 完成了创建表,向表中输入不同类型的数据,创建和编辑表之间的关系,进行了表的维护,修改了表的结构、内容、外观,最后进行了表的操作,查找、替换、排序、筛选等。 已完成 第八周:练习创建各种查询 练习选择查询、参数查询、交叉表查询,然后练习并操作查询,生成查询、删除查询、更新查询、追加查询等。 已完成 第十周:练习创建各种类型的窗体 自动创建纵栏式窗体和表格式窗体,向导创建主|子窗体和图表窗体,练习通过设计器创建窗体,美化窗体。 基本完成 第十三周:练习创建各种类型的报表 自动创建纵栏式报表和表格式报表,向导创建报表,练习通过设计视图创建报表,在报表中添加计算字段和分组汇总数据。 已完成 第十五周:综合应用

网络数据库实训报告(一)

网络数据库应用实训报告 日期:2016年3月18日班级:物联1411 一、实训目的和要求 1、掌握采用界面方式创建、修改、删除数据库; 2、掌握采用T-SQL 语句创建、修改、删除数据库; 二、实训所需仪器、设备 硬件:计算机软件:操作系统Windows7、SQLServer2008 三、实训内容 1)在管理平台中管理数据库。 (1)创建数据库“studentsdb”。 (2)查看studentsdb数据库的属性。 (3)修改数据文件大小为2MB,指定“最大文件大小”为5MB。日志文件的大小在每次填满时自动递增5%。 (4)将studentsdb数据库的名称更改为student_db。 2)使用T-SQL 语句管理数据库 (1)使用CREATE DATABASE 创建studb数据库,然后通过系统存储过程sp_helpdb查看系统中的数据库信息。 (2)使用ALTER DATABASE 修改studb数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小为1MB。(3)

为studb数据库增加一个日志文件,命名为studb_Log2,大小为5MB,最大文件大小为10MB。 (4)将studb数据库的名称更改为my_studb。 (5)使用DROP DATABASE 删除my_studb数据库。 四、实训步骤 (内容说明:1.大致的操作步骤;2.参数设置) 1)在管理平台中管理数据库。 (1)数据库右击→新建数据库→数据库名称“studentsdb”; (2)数据文件→初始大小→2MB (3)数据文件→点击自动增长下的→最大文件大小→限制文件大小→5MB; (4)日志文件→点击自动增长下的→文件增长→按百分比→5% (5) studentsdb右击→属性; (6) studentsdb右击→重命名→student_db; 2)使用T-SQL 语句管理数据库 命令如下: CREATEDATABASE studb on PRIMARY ( NAME='student_db', FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA', size=4MB, MAXSIZE=20MB, FILEGROWTH=1 ) log on ( NAME='stusb_log2', FILENAME='C:\Program Files\Microsoft SQL

数据库实验报告模板

北华航天工业学院 实验报告 课程名称:数据库原理与应用实验内容:数据库安全性管理作者所在系部:网络工程系 作者所在专业:网络工程 作者所在班级:B13521 作者姓名:李文阳 作者学号:201322673 指导教师姓名:王振夺 北华航天工业学院教务处制

实验四数据库安全性管理 一、实验目的 1、理解数据库的安全性机制; 2、掌握SQL Server 2005的验证模式、登录管理、用户管理、角色管理以及权限管理; 二、实验内容 (一)附加上次实验所创建的数据库“db_Library”,并回顾该库的数据表信息。 (二)设置SQL Server的安全验证模式,并以两种方式尝试登录。 (三)登录账户管理 1、以管理员身份登录SQL Server,修改sa的密码。 2、使用SQL语句创建一个SQL Server登录账户,账户名为你的名字拼音,密码自定义。创建完成后,以该账户来进行登录。 3、使用SQL语句来修改上述登录账户的密码。

4、禁用上述登录账户连接SQL Server,并进行验证。 (四)数据库用户管理 1、使用SQL语句添加db_Library数据库用户User2,其登录账户为上题所创建的SQL Server登录账户,使用默认dbo架构,并赋予该用户能够运行Select语句的权限。 (五)权限管理 1、使用SSMS将创建数据表和创建视图的权限授予User2。 2、使用SQL语句将对db_Library数据库中图书信息表的查询、插入、以及对书名和作者列的修改权限授予用户User2。 3、使用SSMS收回User2创建数据表和创建视图的权限。

4、使用SQL语句收回User2修改书名和作者列的权限。 (六)删除上述所建立的数据库用户以及登录账户。 三、实验步骤 主要实现的SQL语句。 使用T-SQL语句创建一个SQL Server登录账户,账户名为你的名字拼音,密码自定义。创建完成后,以该账户来进行登录。 CREATE LOGIN LWY WITH PASSWORD ='123#$' go 使用SSMS和T-SQL语句来修改上述登录账户的密码。 alter login LWY with password='01234' go 禁用上述登录账户连接SQL Server,并进行验证。 alter login LWY disable go 设置上述登录账户为数据库创建者的权限。 (注意:只能在master中授予create database权限) use master go create user JZH for login LWY //为登录账户创建在master中的数据库用户 go grant create database to LWY //授予权限, go 数据库用户管理 使用T-SQL语句添加db_Library数据库用户User2,其登录账户为上题所创建的SQL Server登录账户,使用默认dbo架构,并赋予该用户能够运行Select语句和备份数据库的权限。 use db_Library create user user2 for login LWY

数据库实验报告

数据库实验报告

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

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 不存在或访问被拒绝 原因:未启动数据库服务 二、实验结果及分析(包括结果描述、实验现象分 析、影响因素讨论、综合分析和结论等) 实验结果部分截图:

数据库实验报告

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

课程名称:数据库原理与应用 实验内容:数据库安全性管理 作者所在系部:网络工程系 作者所在专业:网络工程 作者所在班级: B13521 作者姓名:李文阳 作者学号: 指导教师姓名:王振夺 北华航天工业学院教务处制 实验四数据库安全性管理 一、实验目的 1、理解数据库的安全性机制; 2、掌握SQL Server 2005的验证模式、登录管理、用户管理、角色 管理以及权限管理; 二、实验内容 (一)附加上次实验所创建的数据库“db_Library”,并回顾该库的数据表信息。 (二)设置SQL Server的安全验证模式,并以两种方式尝试登录。

(三)登录账户管理 1、以管理员身份登录SQL Server,修改sa的密码。 2、使用SQL语句创建一个SQL Server登录账户,账户名为你的名字拼音,密码自定义。创建完成后,以该账户来进行登录。 3、使用SQL语句来修改上述登录账户的密码。 4、禁用上述登录账户连接SQL Server,并进行验证。 (四)数据库用户管理 1、使用SQL语句添加db_Library数据库用户User2,其登录账户为上题所创建的SQL Server登录账户,使用默认dbo架构,并赋予该用户能够运行Select语句的权限。 (五)权限管理 1、使用SSMS将创建数据表和创建视图的权限授予User2。 2、使用SQL语句将对db_Library数据库中图书信息表的查询、插入、以及对书名和作者列的修改权限授予用户User2。 3、使用SSMS收回User2创建数据表和创建视图的权限。 4、使用SQL语句收回User2修改书名和作者列的权限。 (六)删除上述所建立的数据库用户以及登录账户。 三、实验步骤 主要实现的SQL语句。 使用T-SQL语句创建一个SQL Server登录账户,账户名为你的名字拼音,密码自定义。创建完成后,以该账户来进行登录。

数据库实验报告(一)

滨江学院 题目数据库实验报告(一) 学生姓名 学号 系部电子工程系 专业通信工程 指导教师林美华 二O一三年十二月十八日

实验一数据库的定义实验 本实验需要2学时。 一、实验目的 要求学生熟练掌握和使用SQL、SQL Server企业管理器创建数据库、表、索引和修改表结构,并学会使用SQL Server 查询分析器接收语句和进行结果分析。 二、实验内容 1 创建数据库和查看数据库属性。 2 创建表、确定表的主码和约束条件。为主码建索引。 3 查看和修改表结构。 4 熟悉SQL Server企业管理器和查询分析器工具的使用方法。 三、实验步骤 1 基本操作实验 (1) 使用企业管理器按教材中的内容建立图书读者数据库。 (2)在企业管理器中查看图书读者数据库的属性,并进行修改,使之符合要求。 (3)通过企业管理器,在建好的图书借阅数据库中建立图书、读者和借阅3个表,其结构为; 图书(书号,类别,,作者,书名,定价,作者). 读者(编号,,单位,性别,). 借阅(书号,读者编号,借阅日期) 要求为属性选择合适的数据类型,定义每个表的主码.是否允许空值和默认值等列级数据约束。 (4)在企业管理器中建立图书、读者和借阅3个表的表级约束.每个表的主码约束.借阅表与图书表间、借阅表与读者表之间的外码约束,要求按语义先确定外码约束表达式.再通过操作予以实现.实现借阅表的书号和读者编号的惟一性约束:实现读者性别只能是“男”或“女”的Check(检查)约束。 2 提高操作实验 (一) 将教材中用SQL描述的建立学生--课程操作.在SQL Server企业管理器中实现。库中表结构为: 学生(学号,,年龄,性别,所在系). 课程(课程号,课程名,先行课). 选课(学号,课程号,成绩) 要求: 1)建库、建表和建立表间联系。, 2)选择合适的数据类型。 3)定义必要的索引、列级约束和表级约束. 四、实验方法 l创建数据库 (1)使用企业管理器创建数据库的步骤 1)从“开始”菜单中选择;“程序”“Microsoft SQL2000”“企业管理器”.

MySQL数据库技术实验报告模板

MySQL数据库技术实验报告 系别班级学号姓名地点 地点机房课程名称MySQL数据库技术实验名称实验1 MySQL的使用 实验过程 目的要求: (1)掌握MySQL服务器安装法 (2)掌握MySQL Administrator的基本使用法 (3)基本了解数据库及其对象 实验准备: (1)了解MySQL安装的软硬件要求 (2)了解MYSQL支持的身份验证模式 (3)了解MySQL各组件的主要功能 (4)基本了解数据库、表、数据库对象 实验容: 1.安装MySQL服务器和MySQL界面工具 安装MySQL界面工具。(插入安装好的界面工具截图即可) 2.利用MySQL客户端访问数据库 (1)打开开始,程序,MySQL,MySQL server 5.1,MySQL command line client,进入MySQL客户端界面,输入管理员密码登录。 (2)在客户端输入“help”或“\h”,查看MySQL帮助菜单,仔细阅读帮助菜单的容。

(3)实用show语句查看系统自动创建的数据库。 (4)实用USE语句选择mysql数据库为当前数据库。

(5)使用SHOW TABLES 语句查看当前数据库中的表。 (6)使用了一条SELECT语句查看mysql数据库中存储用户信息表的user的容。 (7)使用use语句将当前的数据库设定为information_schema,并查看数据库数据库中有哪些表。<图表见下页>

实验小结: 在安装MySql中有时可能不能安装不成功,那么卸载时,会存在删除不完全的情况。导致再次安装时依然不成功。 在对某个数据库进行操作之前,必须先选中该数据库。 在MySql安装过程中,注意修改字符集为gb2312或gbk, 以支持中文信息输入。

数据库实验报告5

1.使用系统存储过程(sp_rename)将视图“V_SPJ”更名为“V_SPJ_三建”。(5分) exec sp_rename v_spj, v_spj_三建; 2.针对SPJ数据库,创建并执行如下的存储过程:(共计35分) (1)创建一个带参数的存储过程—jsearch。该存储过程的作用是:当任意输入一个工 程代号时,将返回供应该工程零件的供应商的名称(SNAME)和零件的名称(PNAME) 以及工程的名称(JNAME)。执行jsearch存储过程,查询“J1”对应的信息。(10 分) create proc jsearch @jno char(2) as select sname, pname, jname from s,p,j,spj where s.sno=spj.sno and p.pno=spj.pno and j.jno=spj.jno and spj.jno=@jno; 执行: exec jsearch 'J1'

(2)使用S表,为其创建一个加密的存储过程—jmsearch。该存储过程的作用是:当执 行该存储过程时,将返回北京供应商的所有信息。(10分) 创建加密存储过程: create proc jmsearch with encryption as select * from s where s.city='北京'; sp_helptext jmsearch; (3)使用系统存储过程sp_helptext查看jsearch, jmsearch的文本信息。(5分) 用系统存储过程sp_helptext查看jsearch: exec sp_help jsearch; exec sp_helptext jsearch;

MySQL数据库技术实验报告

MySQL数据库技术 实验报告 系别班级学号姓名地点 计算机科学系计科1102常赵有C111机房 课程名称MySQL数据库技术实验名称实验1 MySQL的使用 实验过程

目的要求: (1)掌握MySQL服务器安装方法 (2)掌握MySQL Administrator的基本使用方法 (3)基本了解数据库及其对象 实验准备: (1)了解MySQL安装的软硬件要求 (2)了解MYSQL支持的身份验证模式 (3)了解MySQL各组件的主要功能 (4)基本了解数据库、表、数据库对象 实验内容: 1.安装MySQL服务器和MySQL界面工具 安装MySQL界面工具。(插入安装好的界面工具截图即可) 2.利用MySQL客户端访问数据库 (1)打开开始,程序,MySQL,MySQL server 5.1,MySQL command line client,进入MySQL客户端界面,输入管理员密码登录。 (2)在客户端输入“help”或“\h”,查看MySQL帮助菜单,仔细阅读帮助菜单的内容。

(3)实用show语句查看系统自动创建的数据库。 (4)实用USE语句选择mysql数据库为当前数据库。 (5)使用SHOW TABLES 语句查看当前数据库中的表。

(6)使用了一条SELECT语句查看mysql数据库中存储用户信息表的user的内容。 (7)使用use语句将当前的数据库设定为information_schema,并查看数据库数据库中有哪些表。

实验小结: 在安装MySql中有时可能不能安装不成功,那么卸载时,会存在删除不完全的情况。导致再次安装时依然不成功。 在对某个数据库进行操作之前,必须先选中该数据库。 在MySql安装过程中,注意修改字符集为gb2312或gbk, 以支持中文信息输入。

数据库实验报告

北京邮电大学国际学院 _11-12_学年第_二_学期实验报告 课程名称:数据库技术与应用 项目名称:基本SOL语句的用法 项目完成人: 姓名:武学超学号: 指导教师:____ ____韩祥斌_____________ 日期: 2012 年 3 月 16 日

目录 一、实验目的............................................. 错误!未定义书签。 1. 结合数据库技术与应用教学的基本知识,理解并掌握基本SQL语句的用法。错误! 未定义书签。 二、实验内容............................................. 错误!未定义书签。 1. 回顾基本SQL语句的语法............................... 错误!未定义书签。 2. 回顾MySQL的基本用法................................. 错误!未定义书签。 3. 初始化数据库,将文件中的内容复制并粘贴到MySQL-Front 的SQL编辑器中,然 后点击“运行”........................................... 错误!未定义书签。 4. 了解实验用例的背景,并进行如下SQL语句的训练:....... 错误!未定义书签。 三、实验环境............................................. 错误!未定义书签。 1. 32位Xp系统下 Mysql 程序(命令行).................. 错误!未定义书签。 四、实验结果............................................. 错误!未定义书签。 1. 问题讨论............................................. 错误!未定义书签。 2. 试验心得............................................. 错误!未定义书签。

(完整版)网络数据库实训报告(一)

网络数据库应用实训报告 日期:2016 年3月18 日班级:物联1411 一、实训目的和要求 1、掌握采用界面方式创建、修改、删除数据库; 2、掌握采用T-SQL 语句创建、修改、删除数据库; 二、实训所需仪器、设备 硬件:计算机软件:操作系统Windows7、SQLServer2008 三、实训内容 1)在管理平台中管理数据库。 (1)创建数据库“studentsdb”。 (2)查看studentsdb 数据库的属性。 (3)修改数据文件大小为2MB,指定“最大文件大小”为5MB。日志文件的大小在每次填满时自动递增5%。 (4)将studentsdb 数据库的名称更改为student_db。 2)使用T-SQL 语句管理数据库 (1)使用CREATE DATABASE 创建studb 数据库,然后通过系统存储过程sp_helpdb 查看系统中的数据库信息。 (2)使用ALTER DATABASE 修改studb 数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小为1MB。

(3)为studb 数据库增加一个日志文件,命名为studb_Log2,大小为5MB,最大文件大小为10MB。 (4)将studb 数据库的名称更改为my_studb。 (5)使用DROP DATABASE 删除my_studb 数据库。 四、实训步骤 (内容说明:1.大致的操作步骤;2.参数设置) 1)在管理平台中管理数据库。 (1)数据库右击→新建数据库→数据库名称“studentsdb”; (2)数据文件→初始大小→2MB (3)数据文件→点击自动增长下的→最大文件大小→限制文件大小→5MB; (4)日志文件→点击自动增长下的→文件增长→按百分比→5% (5) studentsdb右击→属性; (6) studentsdb右击→重命名→student_db; 2)使用T-SQL 语句管理数据库 命令如下: CREATE DATABASE studb on PRIMARY ( NAME='student_db', FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA', size=4MB, MAXSIZE=20MB, FILEGROWTH=1 ) log on ( NAME='stusb_log2', FILENAME='C:\Program Files\Microsoft SQL

数据库实验报告

实验一 SQL Server基本使用与数据定义一.实验目的 1.掌握“服务管理器”、“企业管理器”及“查询分析器”基本使用方法;2.熟悉数据库建模及E/R图的画法; 3.掌握SQL Server 中数据库、及数据表的建立与管理方法; 4.掌握数据的导入/导出及数据库备份/还原方法。 二.实验内容 一、SQL Server 基本使用 1.启动SQL SERVER。 2.注册服务器 3.企业管理器属性 4.查询分析器介绍 5.查看数据库及浏览表中记录 二、数据库的建立与管理 1.数据库建模 2.启动、并打开SQL Server 3.使用图形界面创建数据库和表 4.使用查询分析器创建表 5.数据库的备份与还原

实验二 SQL查询 一.实验目的: 1.掌握SQL语言中SELECT语句的多种查询方式。 2.掌握对表建立与删除索引的方法。 3.掌握聚焦函数的使用方法。 4.掌握集合查询方法。 二.实验内容: 1.建立与删除[索引]的方法。 在各表中,分别按代理商编号、客户编号、产品编号及订单编号建立索引。 CREATE INDEX 代理商No ON 代理商(代理商编号) CREATE INDEX 客户No ON 客户(客户编号) CREATEINDEX产品No ON产品(产品编号) CREATEINDEX订单No ON订单(订单编号) 2.单表查询, ①从产品表中查询现有产品的库存量。 SELECT COUNT(*) FROM产品 ②从客户表中查询“王五”的地址及代理商编号。 SELECT地址,代理商编号 FROM客户 WHERE姓名='王五' ③从代理商表中查询代理商“惠普”的提成金额。 SELECT提成金额 FROM代理商 WHERE姓名='惠普' ④从订货项目表中查询编号为“444”的订单所订购的商品编号及数量。 SELECT产品编号,订购数量 FROM订货项目 WHERE订单编号='444' ⑤分别求代理商和客户的总数。 SELECT COUNT(*)代理商数 FROM代理商 SELECT COUNT(*)客户数 FROM客户 ⑥从订货项目表中,查询编号为0033的产品定货总数量。 SELECT COUNT(*)订货总数量 FROM订货项目 WHERE订单编号='0033' 3.多表查询 ①查询编号为300的客户通过的代理商的姓名和地址。 SELECT代理商.姓名,代理商.地址

网络数据库实训报告

教学管理实训报告题目名称:网络数据库实训 系部: 专业班级: 学生姓名:某某某 学号:1234567891 指导教师: 完成日期:

教学管理实训评定意见 实训题目教学管理数据库实训 系部__管理工程系_____ 专业班级 学生姓名__ 某某某______ 学生学号 1234567891 评定意见: 评定成绩: 指导教师(签名):年月日

(此页背书) 评定意见参考提纲: 1、学生完成的工作量与内容是否符合任务书的要求。 2、学生的勤勉态度。 3、设计或说明书的优缺点,包括:学生对理论知识的掌握程度、实践工作能力、表现出的创造性和综合应用能力等。

计算机工程系(部)教学管理实训任务书 2013-2014学年第一学期 2014年1月3日专业电子商务班级12-6班课程名称网络数据库 实训题目教学管理数据库的设计与实现指导教师 起止时间周数1周实训地点 实训目的: 1.熟悉数据库设计与开发的一般过程。 2.理解概念设计、逻辑设计、物理设计的意义和方法。 3.掌握表内约束和表间约束的作用和实现方法。 4.掌握数据查询设计的方法。 实训任务或主要技术指标: 1.用SQL语句完成数据库和表的设计。 2.表中的记录数应该能满足数据测试的要求。 3.实体的属性和约束设计合理,实体间的外键约束满足系统要求。 4.能够实现系统要求的数据操纵和数据控制操作,其中包括:索引、视图、存储过程及SQL语句的设计。 实训进度与要求: 第1天:收集资料,上机建库、建表、建关联、输入数据。 第2~3天:完成数据使用及查询。 第4天:调试代码,整理实验数据和结果,撰写设计报告。 第5天:进行答辩,报成绩。 主要参考书及参考资料: 1.SQL Server教程郑阿奇清华大学出版社 2.SQL Server数据库项目案例导航刘大玮清华大学出版社 3.SQL Server高级开发指南精英科技中国电力出版社 教研室主任(签名)系(部)主任(签名)

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

假设学校允许学生将银行卡和校园卡进行绑定,在student数据库中有如下的基本表,其中校园卡编号cardid即为学生的学号: icbc_card(studcardid,icbcid,balance) //校园卡ID,工行卡ID,银行卡余额 campus_card(studcardid,balance) //校园卡ID,校园卡余额创建数据库代码如下: use student create table campus_card ( studcardid Char(8), balance Decimal(10,2) ) create table icbc_card ( studcardid Char(8), icbcid Char(10), lance Decimal(10,2), ) 示例数据如下: insert into campus_card values('20150031', 30) insert into campus_card values('20150032', 50) insert into campus_card values('20150033', 70) insert into icbc_card values('20150031','2015003101', 1000) insert into icbc_card values('20150032','2015003201', 1000) insert into icbc_card values('20150033','2015003301', 1000) 针对以上数据库按照要求完成下列实验: 1.编写一个事务处理(begin tran)实现如下的操作:某学号为20150032的学生要从银 行卡中转账200元到校园卡中,若中间出现故障则进行rollback。(15分) 代码: use student begin transaction zhuanzhang go declare @x decimal(10, 2) select @x=balance from icbc_card where studcardid='20150032' set @x=@x-200 if(@x>=0) begin update icbc_card set balance=@x where studcardid='20150032'

数据库实验报告

附件一: 福建农林大学计算机与信息学院 实验报告 课程名称:数据库原理及应用 姓名: 系: 专业: 年级: 学号: 指导教师: 2012年10月日

实验项目列表 序号实验项目名称成绩指导教师 1 实验一数据库的定义实验(验证性) 2 实验二数据库的建立和维护实验(验 证性) 3 实验三数据库的查询实验(验证性) 4 实验四数据库的视图操作实验(验证 性) 5 实验五触发器、存储过程操作实验 (综合性)

实验一:数据库的定义实验 一、实验目的: 1、理解 MySQL Server 6.0 服务器的安装过程和方法; 2、要求学生熟练掌握和使用 SQL、T-SQL、SQL Server Enterpriser Manager Server 创建数据库、表、索引和修改表结构,并学会使用 SQL Server Query Analyzer,接收 T-SQL 语句和进行结果分析。 二、实验环境: 硬件:PC 机 软件:Windows 操作系统、 MySQL Server 6.0 和 Navicat for MySQL 9.0 三、实验内容和原理: 1、安装 MySQL 以及相应的 GUI 工具 2、用 SQL 命令,建立学生-课程数据库基本表: 学生 Student(学号 Sno,姓名 Sname,年龄 Sage,性别 Ssex,所在系Sdept); 课程 Course(课程号 Cno,课程名 Cname,先行课 Cpno,学分 Ccredit); 选课 SC(学号 Sno,课程号 Cno,成绩 Grade); 要求: 1)用 SQL 命令建库、建表和建立表间联系。 2)选择合适的数据类型。 3)定义必要的索引、列级约束和表级约束. 四、实验步骤: 1、运行 Navicat for MySQL,然后进行数据库连接,进入到 GUI 界面; 2、利用图形界面建立基础表: student 表的信息: 字段名类型长度约束条件 Sno varchar9非空、主键 Sname varchar20 Ssex varchar2 Sage smallint 6 Sdept varchar20 course 表的信息:

(完整版)数据库实验报告

数据库实验报告姓名学号

目录 一.实验标题:2 二.实验目的:2 三.实验内容:2 四.上机软件:3 五.实验步骤:3 (一)SQL Server 2016简介3(二)创建数据库 4 (三)创建数据库表 7(四)添加数据17 六.分析与讨论: 19

一.实验标题: 创建数据库和数据表 二.实验目的: 1.理解数据库、数据表、约束等相关概念; 2.掌握创建数据库的T-SQL命令; 3.掌握创建和修改数据表的T-SQL命令; 4.掌握创建数据表中约束的T-SQL命令和方法; 5.掌握向数据表中添加数据的T-SQL命令和方法三.实验内容: 1.打开“我的电脑”或“资源管理器”,在磁盘空间以自己的姓名或学号建立文件夹; 2.在SQL Server Management Studio中,使用create database命令建立“学生-选课”数据库,数据库文件存储在步骤1建立的文件夹下,数据库文件名称自由定义; 3.在建立的“学生-选课”数据库中建立学生、课程和选课三张表,其结构及约束条件如表所示,要求为属性选择合适的数据长度; 4.添加具体数据;

四.上机软件: SQL Server 2016 五.实验步骤: (一)SQL Server 2016简介 1.SQL Server 2016的界面 2.启动和退出SQL Server 2016 1)双击图标,即出现SQL Server2016的初始界 2)选择“文件”菜单中的“退出”命令,或单击控制按钮中的“×”即可 注意事项: 1.在退出SQL Server 2016之前,应先将已经打开的数据库进行保存, 2.如果没有执行保存命令,系统会自动出现保存提示框,根据需要选择相应的操作

数据库技术及应用实验报告

XX大学数学与计算科学学院 学生实验报告 专业班级姓名学号 实验 日期 2014 年5月1 日至2014 年6 月2 日实验 项目数据库技术及应用实验报告 实验内容与要求一、数据库习题部分 书上习题P72-3,P97-11 二、数据库应用系统设计 从以下二个选题中选取其一,进行相应的系统设计 1) 本专业毕业生信息管理系统设计(2010-2013) 要求最少建立一个不少于30个人的基本信息表数据库,建立完全的个人信息,设置一个超级管理员,3个二级用户帐号,3个三级权限用户帐号。 2) 班级电子资源管理系统 模拟电子图书馆的图书管理系统设计班级电子资源数据库系统,提供资源上传、下载、查询等功能数据操纵。 指 导 教 师 意 见 成绩:签名: 2014 年6 月日备 注

数据库习题部分 习题3 操作环境:Mysql , Navicat for My sql 一、建立关系表Supplier、project、part、spp /* 选择对应数据库,并建立名为supplier的table,需要注意的是图

上的credit在截图定义为int型了(以为会是信用评分),后用alter命令改为了varchar(20) */ 二、用insert语句插入数据 /*因为insert的繁琐,实际的数据录入是以图形化Mysql工具Navicat 进行操作的,如下图*/

三、 1.从supplier中查询下列信息,结果按升序输出 2.列出项目负责人名字,不重复 3.查询以J开头或以L结尾的项目名称

4.查询项目经费高于500万元的项目负责人名字,查询结果包含负责人,项目名称,项目经费,并降序列出项目经费 5.列出信誉为优的供应商及所在城市 6.列出项目经费在500~2000万元之间的项目号和项目名

数据库实验报告2

实验内容与要求 请有选择地实践以下各题。 (1)基于“教学管理”数据库jxgl,使用SQL的查询语句表达下列查询:①检索年龄大于23岁的男学生的学号和姓名; SELECT Sno,Sname FROM Student WHERE Ssex=’男’AND Sage>23; ②检索至少选修一门课程的女生姓名; SELECT Sname FROM Student WHERE Ssex=’女’AND Sno IN ( SELECT Sno FROM SC GROUP BY Sno HAVING count(*)>=1; ); ③检索王同学不学的课程的课程号; SELECT Cno; FROM Course WHERE Cno NOT IN ( SELECT Cno FROM Student,SC WHERE Sname like ’王%’AND Student.Sno=SC.Sno ); ④检索至少选修两门课程的学生学号; SELECT DISTINCT Sno FROM SC GROUP BY Sno HAVING count(*)>=2; ⑤检索全部学生都选修的课程的课程号与课程名; SELECT Cno,Cname FROM Course WHERE NOT EXISTS ( SELECT * FROM Student WHERE NOT EXISTS ( SELECT * FROM SC WHERE SC.Sno=Student.Sno AND https://www.sodocs.net/doc/8517964308.html,o=https://www.sodocs.net/doc/8517964308.html,o ) ); ⑥检索选修了所有3学分课程的学生学号;

FROM SC X WHERE NOT EXISTS ( SELECT * FROM Course WHERE Ccredit=3 AND NOT EXISTS ( SELECT * FROM SC Y WHERE X.Sno=Y.Sno AND https://www.sodocs.net/doc/8517964308.html,o=https://www.sodocs.net/doc/8517964308.html,o ) ); (2)基于“教学管理”数据库jxgl,使用SQL的查询语句表达下列查询: ①统计有学生选修的课程门数; SELECT count(DISTINCT Cno) FROM SC; ②求选修4号课程的学生的平均年龄; SELECT AVG(Sage) FROM Student,SC WHERE Cno=4 AND Student.Sno=SC.Sno; ③求学分为3的每门课程的学生平均成绩; SELECT AVG(Grade) FROM Course,SC WHERE Ccredit=3 AND https://www.sodocs.net/doc/8517964308.html,o=https://www.sodocs.net/doc/8517964308.html,o GROUP BY https://www.sodocs.net/doc/8517964308.html,o; ④统计每门课程的学生选修人数,要求超过3人的课程才统计,要求输出课程号和选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列; SELECT Cno,count(Sno) FROM SC GROUP BY Cno HAVING count(Sno)>3 ORDER BY count(Sno) DESC,Cno ASC; ⑤检索学号比“王菲”同学大而年龄比他小的学生姓名; SELECT Sname FROM Student X WHERE Sno> ( SELECT Sno FROM Student Y WHERE Sname=’王菲’AND Sage> ( SELECT Sage FROM Student Z WHERE Sname=’王菲’AND X.Sno=Z.Sno AND Y.Sno=Z.Sno ) ); ⑥检索姓名以“王”打头的所有学生的姓名和年龄;

相关主题