数据库实验报告

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

u数据库原理实验指导

实验前准备(2课时):

请设计一个企业销售管理据库,其中需要保存的信息如下:

员工信息,包括:员工编号、员工姓名、性别、所属部门、职称、到职日、生日、薪水、填表日期;

客户信息,包括:客户号,客户名称,客户住址,客户电话、邮政编码;

产品信息,包括:产品编号,产品名称;

员工和客户可以签订订单,每签订一个订单,就要保存订单信息,包括:订单编号、客户号、业务员编号、订单金额、订货日期、出货日期、发票号码。

此外,每个订单可能涉及到多种产品,每种产品可能被多个订单订购。因此需要每个订单中每类产品的销售明细,包括每种产品的销售数量、单价、订单日期;要求:

(1)给出系统的ER图(可以用word或其它画图工具,如Visio画),要求画出所有的实体,联系,属性以及联系的类型;

(2)将ER图转换为关系模型;

实验一

实验名称:建立数据库和基本表结构(2课时)

一、实验目的

理解数据库模式的概念,通过使用SQL SERVER企业管理器或者My Sql建立数据库和基本表。模式为人事表、客户表、销售表、销售明细表、产品表。熟悉SQL SERVER企业管理器的使用,并将得到的表生成脚本,然后保存。

另外,帮助学生理解上述基本表之间的关系,从而正确、合理地建立表结构,并输入相应记录信息。

二、实验环境

MS SQL SERVER或者My Sql。

三、实验示例

1、使用SQL建立数据库。

例如:create database studentdb

2、使用SQL脚本建立基本表结构。

例如:

create table employee1(

emp_no char(5) not null,

emp_name char(10) not null,

emp_sex char(1) not null,

emp_phone char (13) not null,

emp_add varchar(60) not null,

emp_salary char(5) not null,

)

四、实验内容与步骤

建立一个数据库和五张表的表结构。(1)/*员工人事表employee */

(2)/*客户表customer */

(3)/*销售主表sales */

(4)/*销货明细表sale_item */

(5)/*产品名称表product */

create database experiment1;

create table employee(emp_no char(5) not null primary key, emp_name char(10) not null ,

sex char(1) not null,

dept char(4) not null,

title char(6) not null,

date_hired datetime not null,

birthday datetime null,

salary int not null,

addr char(50) null,

Mod_date datetime not null default now()

);

create table customer(cust_id char(5) not null primary key, cust_name char(20) not null ,

addr char(40) not null,

tel_no char(10) not null,

zip char(6) null

);

create table sales(order_no int not null primary key,

cust_id char(5) not null,

sale_id char(5) not null ,

tot_amt numeric(9,2) not null,

order_date datetime not null,

ship_date datetime not null,

invoice_no char(10) not null

);

create table sale_item(order_no int not null,

prod_id char(5) not null,

qty int not null,

unit_price numeric(9,2) not null,

order_date datetime not null,

constraint c1 primary key(order_no,prod_id)

);

create table product(prod_id char(5) not null primary key, prod_name char(20) not null

);

实验二

实验名称:添加表记录(2课时)

一、实验目的

掌握修改表结构的基本方法,熟练使用INSERT语句为每张表追加表记录。

二、实验环境

MS SQL SERVER 2000或者My SQL

三、实验示例

例如:

insert into employee

(emp_no,emp_name,sex,dept,title,date_hired,salary)

values('E0025','彭江','M','业务','职员',1900/01/21,43200)

四、实验内容与步骤

初步理解表之间的关系,用insert命令输入有效记录(每张表至少需要5条记录)。五、实验报告

insert into experiment1.employee

values('1','张三','男','财务部','无','2000-1-1 00:00:00','1993-1-1 00:00:00',300,'haha','2000-1-1 00:00:00'),

('2','张三2','男','财务部','无','2000-1-1 00:00:00','1993-1-1 00:00:00',300,'haha','2000-1-1 00:00:00'),

('3','张三3','男','财务部','无','2000-1-1 00:00:00','1993-1-1 00:00:00',300,'haha','2000-1-1 00:00:00'),

('4','张三4','男','财务部','无','2000-1-1 00:00:00','1993-1-1 00:00:00',300,'haha','2000-1-1 00:00:00'),

('5','张三5','男','财务部','无','2000-1-1 00:00:00','1993-1-1 00:00:00',300,'haha','2000-1-1 00:00:00'),

('6','张三6','女','财务部','无','2000-1-1 00:00:00','1993-1-1 00:00:00',300,'haha','2000-1-1 00:00:00');

insert into experiment1.customer(cust_id,cust_name,addr,tel_no,zip)

values('1','江科大','镇江','110','212000'),

('2','江科大2','镇江','110','212000'),

('3','江科大3','镇江','110','212000'),

('4','江科大4','镇江','110','212000'),

('5','江科大5','镇江','110','212000'),

('6','江科大6','镇江','110','212000');

insert into experiment1.sales

values(1,'101','1',1000 ,'2004-1-1 00:00:00','2004-1-3 00:00:00','2120001'),

(2,'102','1',100, '2004-1-1 00:00:00','2004-1-3 00:00:00','2120002'),

(3,'103','1',2000, '2004-1-1 00:00:00','2004-1-3 00:00:00','2120003'),

(4,'104','4',300,'2004-1-1 00:00:00','2004-1-3 00:00:00','2120004'),

(5,'105','5',3000,'2004-1-1 00:00:00','2004-1-3 00:00:00','2120005');

insert into experiment1.sale_item

values(1,'1001',10,100,'2004-1-1 00:00:00'),

(2,'1002',100,1,'2004-1-1 00:00:00'),

(3,'1003',4,500,'2004-1-1 00:00:00'), (4,'1004',10,30,'2004-1-1 00:00:00'), (5,'1005',5,600,'2004-1-1 00:00:00');

insert into experiment1.product values('1001','肾宝'),

('1002','肾宝2'),

('1003','肾宝3'),

('1004','肾宝4'),

('1005','肾宝5');

实验三

实验名称:数据库的更新实验(2课时)

一.实验目的

本实验的目的是要求学生熟练掌握修改数据和删除数据的操作。

二、实验环境

MS SQL SERVER 2000或者My SQL

三、实验示例

1.修改操作语句的一般格式为

UPDATE 表名

SET <列名>=<表达式>[,<列名>=<表达式>]……

[where <条件>];

其功能是修改指定表中满足WHERE子句条件的元组。其中SET子句用于指定修改方法,即用<表达式>的值取代相应的属性列值。如果省略WHERE子句,则表示要修改表中的所有元组。

2.删除语句的一般格式为

DELETE

FROM <表名>

[WHERE <条件>];

其功能是从指定表中删除满足WHERE子句条件的所有元组。如果省略WHERE子句,则表示要删除表中的所有元组,但表的定义仍在字典中。

四、实验内容与步骤

1、将员工张三的薪水改为10000。

2、将所有员工的薪水增加100。

3、删除所有女性员工的记录。

4、删除订单金额小于100000的订单。

五、实验报告

update experiment1.employee

set salary=10000

where emp_name='张三';

update experiment1.employee

set salary=salary+100;

delete from experiment1.employee

where sex='女';

delete from experiment1.sales

where tot_amt<1000;

实验四

实验名称:表的完整性约束(2课时)

一、实验目的

理解并掌握关系的完整性约束,熟练使用T-SQL语句为每张表添加表约束。

二、实验环境

MS SQL SERVER 2000或者My SQL

三、实验示例

1、

create table orders

(

order_id char(8),

p_id char(8),

p_name char(10) ,

constraint pk_order_id primary key (order_id) ,

foreign key (p_id, p_name)

References products(p_id, p_name)

)

2、

create table employee1(

emp_no char(5) not null,

emp_name char(10) not null,

emp_sex char(1) not null,

constraint emp_sexchk check(emp_sex in ('m','f')),

emp_phone char (13) not null,

emp_add varchar(60) not null,

emp_salary char(5) not null,

constraint emp_salarychk check (emp_salary between 60000 and 80000)

)

3、

create table employees

(

emp_id char(8),

emp_name char(10) ,

emp_cardid char(18),

constraint pk_emp_id primary key (emp_id),

constraint uk_emp_cardid unique (emp_cardid)

)

四、实验内容与步骤

通过SQL语句修改表约束。

①分别为每张表建立主键约束。

②为相关表建立外键约束。

③在表employee加入CHECK约束:输入的员工编号必须以E开头的5位数编号,性别只能为M/F。

④为销售主表sales中的发票编号字段建立UNIQUE约束。

五、实验报告

alter table experiment1.employee

add primary key(emp_no);

alter table experiment1.sale_item

add constraint c3 foreign key(order_no) references sales(order_no),

add constraint c4 foreign key(prod_id) references product(prod_id);

alter table experiment1.employee

add constraint c2 check(sex in ('m','f')),

add constraint c5 check(emp_name like 'E%'and len(emp_name)=5);

实验五

实验名称:简单查询(2课时)

一、实验目的

理解SELECT语句的操作和基本使用方法,掌握简单查询。

二、实验环境

MS SQL SERVER 2000或者My SQL

三、实验示例

1、查找表中所有姓刘的职工的工号,部门,薪水

select emp_no,emp_name,dept,salary

from employee

where emp_name like '刘%'

2、查找所有定单金额高于20000的所有客户编号

select cust_id

from sales

where tot_amt>20000

3、查找出职称为经理和职称为职员的女员工的姓名、职称、性别。

select emp_name,title,sex

from employee

where title='经理'or title='职员'and sex='F'

4、选取销售数量最多的前5条订单订单号、数量。

select top 5 with ties order_no,sup_id,qty

from sale_item

order by qty desc

5、按部门进行汇总,统计每个部门的总工资

select dept,sum(salary)

from employee

group by dept

四、实验内容与步骤

1、查找所有经理的姓名、职称、薪水。

2、查找出姓“王”并且姓名的最后一个字为“功”的员工。

3、查找住在上海或北京的女员工,并显示其姓名、所属部门、职称、住址。

4、在表sales中挑出销售金额大于等于10000元订单。

5、选取订单金额最高的前10%的订单数据。

6、查找出职称为经理或职称为职员的女员工的信息。

7、删除sales表中作废的订单(其发票号码为I000000004)。(注意:约束)

8、计算出一共销售了几种产品。

9、显示sale_item表中每种个别产品的订购金额总和,并且依据销售金额由大到小排列来显

示出每一种产品的排行榜。

10、计算每一产品每月的销售金额总和,并将结果按销售(月份,产品编号)排序。

五、实验报告

select emp_name,title,salary

from experiment1.employee

where title='经理';

select emp_name

from experiment1.employee

where emp_name like '张%三';

select emp_name,dept,title,addr

from experiment1.employee

where addr='北京|上海'and sex='女';

select *

from experiment1.sales

order by tot_amt desc

limit 0,1;

alter table sales

add constraint FK_sales foreign key(order_no) references sale_item(order_no);

delete from experiment1.sales

where(invoice_no='I000000004');

select count(distinct prod_id ) as num from experiment1.sale_item;

select prod_id,sum(qty*unit_price)

from sale_item

group by prod_id

order by qty*unit_price desc;

select prod_id,order_date,sum(qty*unit_price)

from experiment1.sale_item

group by order_date,prod_id

order by order_date asc,prod_id desc;

实验六

实验名称:表连接查询JOIN(2课时)

一、实验目的

理解JOIN语句的操作和基本使用方法,掌握内连接、外连接、自连接的概念和使用。

二、实验环境

MS SQL SERVER 2000或者My SQL

三、实验示例

1、检索product 表和sale_item表中数量大于2的相同产品的产品编号、产品名称、数量、

单价。

select a.prod_id,a.qty,a.unit_price,b.prod_name

from sale_item as a inner join product as b /*如果改成left join/right join 试分析结果*/

on (a.prod_id=b.prod_id) and a.qty>2

order by a.prod_id

2、查找出employee表中住址相同的员工的姓名、性别、职称、薪水、住址。

select a.emp_name,a.sex,a.title,a.salary,a.addr,b.emp_name,b.sex,b.title,b.salary,b.addr

from employee as a inner join employee as b

on (a.emp_no!=b.emp_no) and (a.emp_name>b.emp_name) and (a.addr=b.addr)

四、实验内容与步骤

1、查找出employee表中部门相同且住址相同的女员工的姓名、性别、职称、薪水、住址。

2、检索product 表和sale_item表中相同产品的产品编号、产品名称、数量、单价。

3、检索product 表和sale_item表中单价高于2400元的相同产品的产品编号、产品名称、

数量、单价。

4、分别使用左向外连接、右向外连接、完整外部连接检索product 表和sale_item表中单价

高于2400元的相同产品的产品编号、产品名称、数量、单价。并分析比较检索的结果。

五、实验报告

select a1.emp_name,a1.sex,a1.title,a1.salary

from employee a1 inner join employee a2

on(a1.addr=a2.addr and a1.dept=a2.dept and a1.emp_no!=a2.emp_no and a2.sex='女'and a1.sex='女');

select a.prod_id,a.qty,a.unit_price,b.prod_name

from sale_item as a inner join product as b on (a.prod_id=b.prod_id) and a.unit_price>2400 order by a.prod_id;

select a.prod_id,a.qty,a.unit_price,b.prod_name

from sale_item as a left join product as b on (a.prod_id=b.prod_id) and a.unit_price>2400

order by a.prod_id;

select a.prod_id,a.qty,a.unit_price,b.prod_name

from sale_item as a right join product as b on (a.prod_id=b.prod_id) and a.unit_price>2400 order by a.prod_id;

select a.prod_id,a.qty,a.unit_price,b.prod_name

from sale_item as a right join product as b on (a.prod_id=b.prod_id) and a.unit_price>2400 union

select c.prod_id,c.qty,c.unit_price,d.prod_name

from sale_item as c left join product as d on (c.prod_id=c.prod_id) and c.unit_price>2400;

实验七

实验名称:嵌套查询(2课时)

一、实验目的

掌握SELECT语句的嵌套使用,实现表的复杂查询,进一步理解SELECT语句的高级使用方法。

二、实验环境

MS SQL SERVER 2000或者My SQL

三、实验示例

1、由employee表中查找出薪水最高的员工信息。

select *

from employee

where salary=

(select max(salary )

from employee )

2、由sales表中查找出订单金额大于“E0013业务员在1996/10/15这天所接每一张订单的金额”的所有订单。

select *

from sales

where tot_amt>all

(select tot_amt

from sales

where sale_id='E0013'and order_date='1996/10/15')

order by tot_amt

四、实验内容与步骤

1、由sales表中查找出销售金额最高的订单。

2、由sales表中查找出订单金额大于“E0013业务员在1996/10/15这天所接任一张订单的

金额”的所有订单,并显示承接这些订单的业务员和该条订单的金额。

3、找出公司女业务员所接的订单。

4、找出公司中姓名相同的员工,并且依据员工编号排序相识这些员工信息。

5、找出目前业绩未超过20000元的员工。

6、计算公司内各个部门的工资支出总和。

7、计算每一产品销售数量总和与平均销售单价。

五、实验报告

select *

from sales

where tot_amt=(select max(tot_amt)

from sales

);

select sale_id,tot_amt

from sales

where(tot_amt>(select tot_amt

from sales

where sale_id='E0013'and order_date='1996/10/15'

)

);

select *

from sales

where (sales.order_no in(

select order_no

from sales inner join employee

on sales.sale_id=employee.emp_no and employee.sex='女') );

select r1.*

from employee r1 inner join employee r2

on(r1.emp_name=r2.emp_name and r1.emp_no!=r2.emp_no) order by r1.emp_name desc;

select *

from employee

where emp_no in

(select sale_id

from sales

group by sale_id

having sum(tot_amt)<20000);

select dept,sum(salary)

from employee

group by dept;

select prod_id,sum(qty)as'销售总和'

from sale_item

group by prod_id;

select sum(qty*unit_price)/sum(qty) as'平均销售单价'

from sale_item;

实验八

实验名称:视图的建立与使用(2课时)

一、实验目的

掌握视图的定义与工作原理。

二、实验环境

MS SQL SERVER 2000或者My SQL

三、实验示例

1、

create view emp_view as

select emp_no,emp_name,salary

from employee

where sex='f'

2、

create view sale_item_view as

select sales.order_no,sales.order_date,prod_id,qty

from sales,sale_item

where sales.order_no=sale_item.order_no

/*注意:插入数据时要考虑数据列是否有默认值或允许为空,否则INSERT失败。*/

insert into sale_item_view(order_no,order_date)

values(10010,'1996/12/20')

insert into sale_item_view(prod_id,qty)

values('p0010',8)

四、实验内容与步骤

1、创建一个视图,该视图只含上海客户信息,即客户号、客户姓名、住址。

2、对视图添加一条记录数据。(注意:分别查看customer表和该视图的结果。)

3、删除视图中所有姓“王”的客户数据。

4、通过视图修改表内某一客户的姓名。

5、有两个基本表employee和sales,创建一个视图,该视图包含相同业务员的编号、姓名、

订单号、销售总金额。

6、将上述视图中订单号为10001的记录的销售总金额改为60000。

7、给上述视图添加一条记录数据。

8、删除上述视图。

五、实验报告

create view cusinfo

as

select cust_id,cust_name,addr

from experiment1.customer

where addr like '上海%';

insert into experiment1.cusinfo

values('8','王某','镇江);

delete from cusinfo

where cust_name like'王%';

update cusinfo

set cust_name=' '

where cust_id=' ';

create view info

as

select sale_id,emp_name,order_no,tot_amt

from employee inner join sales

on sale_id=emp_no;

update info

set tot_amt=60000

where order_no='10001';

insert into info;

values(‘10’,’里斯’,’10001’,2000);

drop view info;

实验九

实验名称:数据备份与恢复(2课时)

1.实验目的

使学生了解SQL Server的数据备份和恢复机制,掌握SQL Server中数据库备份和恢复的方法。理解有关数据备份和数据恢复的概念,掌握其基本技术和方法。

2. 实验内容

在SQL Server企业管理器中创建备份设备;为本实验所建数据库设置备份计划,实施数据库备份操作;修改数据库数据并实现数据恢复。

3. 实验要求

在SQL Server企业管理器中:

(1)创建一个备份设备。

(2)为本实验数据库设置备份计划,要求每当CPU空闲时进行数据库备份,实现立即备份操作;为该数据库设置备份计划,要求每月1号进行数据库备份。

(3)删除或修改该数据库中的数据,实现数据恢复操作。

(4)修改该数据库备份计划,要求每星期对数据库备份一次。

4.注意问题:

(1)SQL Server具有的完全备份、事务日志备份和增量备份形式的功能特点。

(2)SQL Server的两种方式数据库备份和恢复操作的功能特点。

(3)SQL Server支持的三种数据备份和恢复策略的功能特点。

实验十

实验名称:存储过程和触发器(2课时)

1.实验目的与要求

(1)熟悉T-SQL的流程控制语句、游标的使用

(2)学会编制自定义函数

(3)掌握创建、执行、修改及删除存储过程的方法

2.实验内容

(1)使用T-SQL的流程控制语句、游标,完成对数据的处理

(2)使用自定义函数,完成对数据的处理

(3)使用存储过程,完成对数据的处理

3.实验步骤

(1)使用T-SQL的流程控制语句、游标,进行程序设计

(2)自定义函数并进行调用,完成对数据的处理

(3)使用存储过程,完成对数据的处理

4.实验内容

(1)T-SQL的流程控制语句、游标的使用

编写程序完成以下功能,在查询分析器中执行程序,并记录结果。

●在score表中求某班学生某门课程的最高分和最低分的学生信息,包括学号、姓名、

课程名、成绩四个字段。

●查询某班的学生信息,要求列出的字段为:班级、本班内的学号、姓名、性别、出

生日期、政治面貌

●在student表中先插入三条新记录,其中的Pollity字段的值为NULL,要求对记录

进行查询时,对应的NULL值在显示时显示为“群众”

●根据score表中考试成绩,查询某班学生某门课程的平均成绩,并根据平均成绩输

出相应的提示信息

●根据score表中考试成绩,查询某班学生的考试情况,并使用CASE将课程号替换

为课程名称

●根据t_score表中考试成绩,查询某班学生的考试情况,并根据考试分数输出考试

等级。

(2)存储过程的创建与调用

按要求完成以下功能,并记录结果。

●创建一个存储过程stuscoreinfo,完成的功能是在表student、表course和表score中查询

以下字段:班级、学号、姓名、性别、课程名称、考试分数。

●创建一个带有参数的存储过程stu_info,该存储过程根据传入的学生编号,在student中

查询此学生的信息。

●创建一个带有参数的存储过程stu_age,该存储过程根据传入的学生编号,在student中

计算此学生的年龄,并根据程序执行结果返回不同的值,程序执行成功,返回整数0,如果执行错误,则返回错误号。

●执行stuscoreinfo存储过程(无参)

●执行存储过程stu_info(该存储过程有一个输入参数“学号”,在执行时需要传入一个学

号值)。

●执行存储过程stu_age(该存储过程有一个输入参数“学号”和一个输出参数@age。存

储过程执行完后应有一个返回的状态值,这个值可以从返回的错误号得到)。

●使用系统存储过程sp_help、sp_helptext、sp_depends、sp_stored_procedures查看用户创

建的存储过程

●删除存储过程stuscoreinfo

(3)自定义函数的创建与调用

按要求完成以下功能,在查询分析器中执行程序,并记录结果。

数据库实验报告

课程设计报告题目:数据库实验上机实验报告 专业班级:计算机科学与技术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语句完成增、删、个、改的操作;

数据库原理实验报告

南京晓庄学院 《数据库原理与应用》 课程实验报告 实验一SQL Server 2005常用服务与实用工具实验 所在院(系):数学与信息技术学院 班级:14软工5班 学号:14551204 14551206 姓名:花元凯罗文波 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主要版本类别与主要功能特性。 SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能。SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能(BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能。SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQL Server版本。目前最新版本是SQL SERVER 2014。 1,SQL Server 2005学习版当保护和管理应用系统内外部的信息变得至关重要时,通过提供一套免费、易于使用和健壮的数据库,学习版帮助开发人员建立强健的和可靠的应用系统。

数据库实验报告

数据库实验报告

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

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

数据库实验报告完整

华北电力大学 实验报告 | | 实验名称数据库实验 课程名称数据库 | | 专业班级:学生姓名: 学号:成绩: 指导教师:实验日期:2015/7/9

《数据库原理课程设计》课程设计 任务书 一、目的与要求 1.本实验是为计算机各专业的学生在学习数据库原理后,为培养更好的解决问题和实际动手能力 而设置的实践环节。通过这个环节,使学生具备应用数据库原理对数据库系统进行设计的能力。 为后继课程和毕业设计打下良好基础。 2.通过该实验,培养学生在建立数据库系统过程中使用关系数据理论的能力。 3.通过对一个数据库系统的设计,培养学生对数据库需求分析、数据库方案设计、系统编码、界 面设计和软件调试等各方面的能力。是一门考查学生数据库原理、面向对象设计方法、软件工程和信息系统分析与设计等课程的综合实验。 二、主要内容 针对一个具有实际应用场景的中小型系统(见题目附录)进行数据库设计,重点分析系统涉及的实体、实体之间的联系,实现增加、删除、更新、查询数据记录等基本操作。大致分为如下步骤: 1. 理解系统的数据库需求,分析实体及实体间联系,画出E-R图: 1)分析确定实体的属性和码,完成对该实体的实体完整性、用户自定义完整性的定义。 2)设计实体之间的联系,包括联系类型和联系的属性。最后画出完整的E-R图。 2.根据设计好的E-R图及关系数据库理论知识设计数据库模式: 1)把E-R图转换为逻辑模式; 2)规范化设计。使用关系范式理论证明所设计的关系至少属于3NF并写出证明过程;如果不属于3NF则进行模式分解,直到该关系满足3NF为止,要求写出分解过程。 3)设计关系模式间的参照完整性,要求实现级联删除和级联更新。 4)用SQL语言完成数据库内模式的设计。 3.数据库权限的设计: 1)根据系统分析,完成授权操作; 2)了解学习收回权限的操作。 4.完成用户界面的设计,对重要数据进行加密。

数据库原理实验报告(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主要版本类别与主要功能特性。

数据库实验报告(一)

滨江学院 题目数据库实验报告(一) 学生姓名 学号 系部电子工程系 专业通信工程 指导教师林美华 二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”“企业管理器”.

最新数据库管理系统实验报告含答案

武汉纺织大学《最新数据 库管理系统》课程实验报告 班级: _______姓名:实验时间:年月日指导教师:_______ 一、实验目的 1、通过实验,使学生全面了解最新数据库管理系统的基本内容、基本原理。 2、牢固掌握SQL SERVER的功能操作和Transact-SQL语言。 3、紧密联系实际,学会分析,解决实际问题。学生通过小组项目设计,能够运用最新数据库管理系统于管理信息系统、企业资源计划、供应链管理系统、客户关系管理系统、电子商务系统、决策支持系统、智能信息系统中等。 二、实验内容 1.导入实验用示例数据库: f:\教学库.mdf f:\教学库_log.ldf f:\仓库库存.mdf f:\仓库库存_log.ldf 1.1 将数据库导入 在SqlServer 2005 导入已有的数据库(*.mdf)文件,在SQL Server Management Studio 里连接上数据库后,选择新建查询,然后执行语句 EXEC sp_attach_db @dbname = '教学库', @filename1 = 'f:\教学库.mdf', @filename2 = 'f:\教学库_log.ldf' go use [教学库] EXEC sp_changedbowner 'sa' go EXEC sp_attach_db @dbname = '仓库库存',

@filename1 = 'f:\仓库库存.mdf', @filename2 = 'f:\仓库库存_log.ldf' go use [仓库库存] EXEC sp_changedbowner 'sa' go 1.2 可能出现问题 附加数据库出现“无法打开物理文件"X.mdf"。操作系统错误5:"5(拒绝访问。)"。(Microsoft SQL Server,错误: 5120)”。 解决:找到要附加的.mdf文件-->右键-->属性-->安全-->选择当前用户-->编辑-->完全控制。对.log文件进行相同的处理。 2.删除创建的数据库,使用T-SQL语句再次创建该数据库,主文件和日志文件的文件名同上,要求:仓库库存_data最大尺寸为无限大,增长速度为20%,日志文件初始大小为2MB,最大尺寸为5MB,增长速度为1MB。 CREATE DATABASE仓库库存 (NAME = '仓库库存_data', FILENAME = 'F:\仓库库存_data.MDF' , SIZE = 10MB, FILEGROWTH = 20%) LOG ON (NAME ='仓库库存_log', FILENAME = 'F:\仓库库存_log. LDF', SIZE = 2MB, MAXSIZE = 5MB, FILEGROWTH = 1MB) 2.1 在数据库“仓库库存”中完成下列操作。 (1)创建“商品”表,表结构如表1:

福建农林大学数据库实验报告

福建农林大学计算机与信息学院 实验报告 课程名称:数据库原理及应用 姓 名: 系: 专业:计算机科学与技术 年级: 学号: 指导教师:李金铭 副教授 职 称: 2015年月日

实验目录:

福建农林大学计算机与信息学院实验报告 实验名称:数据库得定义实验 一、实验目得与要求 (1)要求学生熟练掌握与使用SQL、Transact-SQL、SQL Server企业管理器创建数据库、表、索引与修改表结构. (2)学会使用SQL Server查询分析器接收Transact-SQL语句与进行结果分析。 二、实验内容与原理 1、基本操作实验 (1)使用企业管理器按教材中得内容建立图书—读者数据库。 (2)在企业管理器中查瞧图书读者数据库得属性,并进行修改,使之符合要求. (3)通过企业管理器,在建好得图书借阅数据库中建立图书、读者与借阅3个表,其结构为; 图书(书号,类别,出版社,作者,书名,定价); 读者(编号,姓名,单位,性别,电话); 借阅(书号,读者编号,借阅日期) 要求为属性选择合适得数据类型,定义每个表得主码,就是否允许空值与默认值等列级数据约束。 (4)在企业管理器中建立图书、读者与借阅3个表得表级约束:每个表得主码约束;借阅表与图书表间、借阅表与读者表之间得外码约束,要求按语义先确定外码约束表达式,再通过操作予以实现;实现借阅表得书号与读者编号得惟一性约束:实现读者性别只能就是“男”或“女”得Check(检查)约束. 三、实验环境 硬件:计算机 软件:Windows 2000与SQL Server 2000 四、算法描述及实验步骤 l.通过企业管理器,建立图书借阅数据库 在数据库图标上右击,选择“新建数据库”,输入“图书_读者",单击“确定”按钮,关闭对话框。在企业管理器窗口中出现“图书-读者”数据库标志,这表明建库工作已经完成。2.在建好得图书借阅数据库中建立图书、读者与借阅3个表 (1)建立“图书”表。 选中图书_读者数据库中得表文件夹,单由鼠标右键,在弹出得菜单中选择“新建表”,如图2所示。 (2)输入结构 书号:char长度10,不允许空值。并设置为主键。 类别:char长度12,允许空值。 出版社:varchar 长度50,不允许空值。 作者:varchar长度50,允许空值。 名称:varchar 长度50,不允许空值。 定价:char长度10,允许空值。 建立表格如图3所示。 (3)建立“读者"表与“借阅"表。 与建立“图书"表得形式一致,如表2。

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

数据库原理实验报告 实验三数据查询 班级:××× 姓名:××× 学号:××× 数据查询 一、[实验目的] 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的查

数据库实验报告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;

数据库数据查询实验报告和答案.doc

数据库数据查询实验报告和答案 韶关学院学生实验报告册实验课程名称:数据库技术与应用实验项目名称:数据库的数据查询实验类型(打√):(基础?、综合、设计)院系:专业班级:姓名学号:指导老师:韶关学院教务处编制一、实验预习报告内容预习日期:10月10月22日(星期二第七八节)实验同组人:如有实验数据表格,学生在实验预习时应画好实验数据表格,供实验时填写数据(本页如不够,可另附相同规格的纸张)。 指导教师批阅及签名签名:年月日三、实验报告内容9月24日实验报告内容原则上应包含主要实验步骤、实验数据计算(实验操作)结果、实验结果(疑问)分析等项目。 实施内容:一、根据实验要求完成实验:(写明步骤和截图)1、在数据库studentsdb中,新建表studentdb_info,curriculum,grade。 并输入相应的数据,如图1、2和3所示。 图1图2图32、在studentsdb数据库中,使用下列SQL语句将输出什么?(1)selectcount(*)fromgrade结果如图4所示:图4(2)selectsubstring(学生姓名,1,2)fromstudent_info结果如图5所示:图5(3)selectupper(kelly)结果如图6所示:图6(4)selectreplicate(kelly,3)结果如图7所示:图7(5)selectsqrt(分数)fromgradewhere分数>=85结果如图8所示:图8(6)select2,3,power(2,3)结果如图9所示:图9(7)selectyear(getdate()),month(getdate()),day(getdate())结果如图10所示:图102、在studentsdb数据库中使用select语句近基本查询。 (1)在student_info表中,查询每个学生的学号、姓名、出生日

数据库原理实验报告

数据库原理 实验报告 系别电子信息系 专业计算机科学与技术班级学号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

数据库实验报告

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

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

数据库试验答案

计算机与信息学院 数据库实验报告 专业班级 学生姓名及学号 课程教学班号 任课教师 实验指导教师 实验地点 2012 ~2013 学年第二学期

实验1 使用向导创建和删除数据库 一、实验目的 1.熟悉SQL Server 中SQL Server Management Studio的环境 2.了解SQL Server 数据库的逻辑结构和物理结构 3.掌握使用向导创建和删除数据库的方法 二、实验要求 1.熟练使用SSMS进行数据库的创建和删除操作。 2.完成实验报告。 三、实验内容 设有一学籍管理系统,其数据库名为“EDUC”。 初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长; 日志文件初始为2MB,最大可增长到5MB,按1MB增长。 数据库的逻辑文件名为“student_data”, 物理文件名为“student_data.mdf,存放路径为“E:\sql_data”。 日志文件的逻辑文件名为“student_log”, 物理文件名为“student_log.ldf”,存放路径为“E:\sql_data”。 四、实验步骤

1.使用SQL Server Management Studio(简称SSMS)创建数据库。 (1)启动SSMS 在开始菜单中:所有程序-SQL Server 2005 -SQL Server Management Studio单击“连接”按钮,便可以进入【SQL Server Management Studio】窗口。如果身份验证选择的是“混合模式”,则要输入sa的密码。 (2)建立数据库 在“对象资源管理器”窗口,建立上述数据库EDUC。在数据库节点上右击选择新建。同时建立一个同样属性的数据库EDUC1。

数据库原理实验报告册

实验名称课时实验报告成绩实验(一)——数据库基本操作 2 实验(二)——SQL语句 6 实验(三)——数据库完整性与 4 安全性实验 实验(四)——数据库编程 4 备注:

实验一——数据库基本操作 一、实验目的 1.熟悉MS SQL SERVER运行界面,掌握服务器的基本操作。 2.掌握界面操作方法完成用户数据库建立、备份和还原。 3.建立两个实验用的数据库,使用企业管理器和查询分析器对数据库和表进行 基本操作。 二、实验预习内容 在认真阅读教材及实验指导书的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。 1.熟悉SQL SERVER 2000 的运行环境,练习服务器基本操作:打开、停止、 关闭。 2.使用SQL SERVER 2000 中的企业管理器完成以下任务。 数据库名称:STC 表:STU(sno char(9), sname varchar(50), ssex char(2) , sage int, sdept char(2) ); COUTSES(cno char(3), cname varchar(50), cpno char(3), credit int ); SC(sno char(9), cno char(3), grade int ); 说明:以上为表结构,以sno char(9)为例,说明sno属性设置为字符类型,宽度为9,int指整型数据。 1)建立数据库STC,分别建立以上三张表,并完成数据录入。(表结构及数据参见教材) A.新建STU数据库

单击STU数据库,选择表,然后新建,依次用相同的步骤建立STU、COURSES 和SC表,见图B B.新建表 数据录入:

数据库原理实验报告分析

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中的字段说明创建。

数据库实验报告

实验一 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代理商.姓名,代理商.地址

数据库实验报告1 (3500字)

河北科技大学 实验报告 级专业班学号年月日姓名同组人指导教师实验名称数据定义/数据操纵语言成绩实验类型批阅教师 一、实验目的 熟悉sql server 上机环境以及sql server 客户端的配置;熟练掌握和使用ddl 语言,建立、修改和删除数据库表、主键、外键约束关系和索引;熟练掌握和使用dml 语言,对数据进行增加、修改和删除操作。二、实验内容 sql 数据定义语句,sql 数据操纵语句。三、实验要求 1.熟悉sql server 上机环境; 2.建立数据库表,修改数据库表结构,建立、删除索引。 教学管理数据库各表的数据结构和数据如下:cs:计算机系ma:数学系is:信息系 学生情况表student 主关键字:sno 非空字段:sname,sdept,sclass 课程名称表course 主关键字:cno (1)sql 数据定义语句: 1-1:(建立数据库表) 建立教学数据库的四个数据库表,其中student 表中不包含ssex(c,2) 字段,sname字段为sname(c,8)且可为空。 --创建表 create table student ( sno char(5) not null, sname varchar(8) not null, sdept char(2) not null, sclass char(2) not null, sage numeric(2,0), primary key (sno) ) create table course ( cno char(3) not null, cname varchar(16), ctime numeric(3,0), primary key (cno) ) create table teach ( tname varchar(8) not null, tsex char(2), cno char(3) not null, tdate datetime default(getdate()), tdept char(2) not null, primary key (tname, cno, tdept), foreign key (cno) references course(cno) ) create table score ( sno char(5) not null, cno char(3) not null, score numeric(5,2), primary key (sno, cno), foreign key (sno) references student(sno), foreign key (cno) references course(cno), ); 创建表之后的结果,如图一: (图一)

相关文档
最新文档