[工学]数据库应用与设计 课后实验 实验一到实验五 代码加截图.doc

上传人:scccc 文档编号:11482042 上传时间:2021-08-07 格式:DOC 页数:62 大小:3.85MB
返回 下载 相关 举报
[工学]数据库应用与设计 课后实验 实验一到实验五 代码加截图.doc_第1页
第1页 / 共62页
[工学]数据库应用与设计 课后实验 实验一到实验五 代码加截图.doc_第2页
第2页 / 共62页
[工学]数据库应用与设计 课后实验 实验一到实验五 代码加截图.doc_第3页
第3页 / 共62页
[工学]数据库应用与设计 课后实验 实验一到实验五 代码加截图.doc_第4页
第4页 / 共62页
[工学]数据库应用与设计 课后实验 实验一到实验五 代码加截图.doc_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《[工学]数据库应用与设计 课后实验 实验一到实验五 代码加截图.doc》由会员分享,可在线阅读,更多相关《[工学]数据库应用与设计 课后实验 实验一到实验五 代码加截图.doc(62页珍藏版)》请在三一文库上搜索。

1、实验一 建立数据库实验名称:建立数据库实验内容:在SQL Server环境下建立数据库和维护数据库。实验目的:理解SQL Server数据库的存储结构,掌握SQL Server数据库的建立方法和维护方法。实验方法:在SQL Server环境下用CREATE DATABASE命令建立数据库(注意:需要是系统管理员用户,或者被指定dbcreator固定服务器角色的成员,或者被显式地授予CREATE DATABASE权限,有关权限的内容请课文5.2节)实验要求:1、 根据上体要求创建如下3个数据库:a) 创建数据库test1(使用一个数据文件和一个日志文件),要求指定一个数据文件、一个事务日志文件,

2、并把它们安排在不同的硬盘上。b) 创建数据库test2(使用多个数据文件和多个日志文件),要求使用3个数据文件和两个事务日志文件,主数据文件是列表中的第一个文件或者用关键字PRIMARY指定(文件扩展名:主数据文件使用.mdf,次数据文件使用.ndf,事务日志文件使用.ldf)。c) 创建数据库test3(使用文件组),要求使用3个文件组(含主文件组,默认的文件组),每个文件组包含两个数据文件,并且每个文件组要安排在不同的硬盘上。2、 修改建立的test1数据库,为之添加一个5MB大小的新数据文件。3、 修改建立的test2数据库,将其中的主数据文件增加5MB的存储空间。4、 删除建立的数据库

3、test1。相关命令建立数据库的命令是CREATE DATABASE,其常用格式是(命令解释参见课文2.4.2节):CREATE DATABASE database_nameON,FILEGROUP filegroup_name , ,LOG ON ,修改数据库的命令是ALTER DATABASE,其常用格式是(命令解释参见SQL Server联机帮助):ALTER DATABASE databaseADD FILE | ADD LOG FILE | MODIFY FILE | MODIFY NAME = new_dbname删除数据库的命令是DROP DATABASE,其格式是:DROP D

4、ATABASE database_name实验操作:1)代码:create database test1ON(name=test1,FILENAME=F:datetest1.mdf ,SIZE=10,MAXSIZE=50,FILEGROWTH=5)LOG ON (NAME=test1_log,FILENAME=E:datetest1.ldf,SIZE=5MB,MAXSIZE=25MB,FILEGROwTH=5MB) 实验一1.1图2)代码 create database test2on (name=dat11,filename=F:datedat11.mdf,size=10mb,maxsize

5、=100mb,filegrowth=10%),(name=dat22,filename=F:datedat22.ndf,size=10mb,maxsize=100mb,filegrowth=10%),(name=dat33,filename=F:datedat33.ndf,size=10mb,maxsize=100mb,filegrowth=10%)log on(name=log1,filename=F:datelog1.ldf,size=10mb,maxsize=100mb,filegrowth=5mb),(name=log2,filename=F:datelog2.ldf,size=10m

6、b, filegrowth=10%) 实验一 1.2 图maxsize=100mb, (3)代码:create database test3on primary(name=dab1,filename=F:datadab1.mld,size=5mb,maxsize=10mb,filegrowth=1mb),filegroup fg11(name=dab2,filename=F:datadab2.nld,size=1mb,maxsize=10mb,filegrowth=1mb),filegroup fg22(name=dat1,filename=E:datedat1.nld,size=1mb,ma

7、xsize=10mb,filegrowth=1mb),(name=dat2,filename=E:datedat2.nld, size=1mb,maxsize=10mb,filegrowth=1mb),filegroup fg33(name=da1,filename=G:datada1.nld,size=1mb,maxsize=10mb,filegrowth=1mb),(name=da2, 实验一 1.3 图filename=G:datada2.nld,size=1mb,maxsize=10mb,filegrowth=1mb) 2 代码:alter database test1 add fil

8、e (name=te,filename=F:datate.mld,size=5mb,maxsize=100mb,filegrowth=5mb) 实验一 2图3 代码:alter database test2modify file (name=dat11,filename=F:datadat11.mid,maxsize=105mb) 实验一 3图 4:代码:dropdatabase test1 实验一 4图 实验二 建立表和定义完整性约束实验名称:建立模式、表和定义完整性约束实验内容:在实验一建立的数据库的基础上,参照下图和下表建立表并定义完整性约束。面积仓库号城市仓库号职工号工资职工号供应商号

9、订购单号订购日期金额订购单号序号产品名称单价数量供应商号供应商名地址仓库职工供应商订购单订购单明细图1 订货数据库表1 订货数据库字段和约束说明表名字段名字段类型关键字约束说明仓库仓库号6个字符是城市10个字符唯一,不允许空值面积数值大于等于50职工职工号8个字符是主键 不为空值经理参照仓库的仓库号,允许空值。工资货币大于等于1000,小于等于10000供应商供应商号4个字符是供应商名16个字符地址30个字符订购单职工号参照职工表的职工号,不允许空值供应商号参照供应商表的供应商号,允许空值订购单号6个字符是订购日期日期默认是当前日期金额货币默认空值订购单明细订购单号是参照订购单表的订购单号,不

10、允许空值序号2位数字是产品名称20个字符单价货币大于0,默认空值数量整数大于0,不允许空值实验目的:熟练掌握表的建立和数据完整性速描定义方法,实践DBMS提供的数据完整性功能,加深对数据完整性的理解。实验方法:在实验一建立数据库的基础上用CREATE SCHEMA命令建立模式,用CREATE TABLE命令建立表并定义数据完整性约束(注意:需要有CREATE SCHEMA和CREATE TABLE的权限,或者其他具有相应权限的身份,有关权限的内容请参见课文5.2节),用ALTER TABLE命令修改表结构。实验要求:1、 用CREATE SCHEMA命令建立模式(自己命名模式名称)。2、 在定

11、义的模式下参照图1和表1使用CREATE TABLE命令建立表并定义完整性约束。3、 使用ALTER TABLE命令按如下要求修改表结构:a) 为订购单增加一个新的字段“完成日期”,类型为日期时间型,默认是空值。b) 为订单明细表的“数量”字段重新定义约束:大于0、小于等于1000的正整数,不允许为空值。c) 将供应商表的供应商名字段的类型修改为varchar(30)。相关命令CREATE SCHEMA命令的基本格式是(详细解释参见课文第3.3.1节):CREATE SCHEMA schema_nameCREATE TABLE命令的基本格式是(详细解释参见课文第3.3.2节):CREATE T

12、ABLE schema_name.table_name ( | ,.n ) 其中列定义(column_definition)的基本格式是:Column_name NULL|NOT NULL CONSTRAINT constraint_name PRIMARY KEY | UNIQUE | FOREIGN KEY ( column ,.n ) REFERENCES referenced_table_name ( ref_column ,.n ) ON DELETE NO ACTION | CASCADE | SET NULL | SET DEFAULT ON UPDATE NO ACTION |

13、 CASCADE | SET NULL | SET DEFAULT | CHECK ( logical_expression ) 如果需要还可以定义计算列(computed_column_definition)和表级约束(table_constraint)。ALTER TABLE命令的基本格式是(详细解释参见课文3.3.2节):ALTER TABLE schema_name.table_name ALTER COLUMN column_name NULL | NOT NULL | ADD | | | DROP CONSTRAINT constraint_name | COLUMN column

14、_name 实验操作:1 代码:create schema kun 、2 代码:1)create table kun.仓库(仓库号char(6)primary key,城市char(10),面积char(10) check (面积in(=50)2)create table kun.职工(职工号char(8) primary key,仓库号char(6) foreign key references kun.仓库,工资money check (工资in(between 1000 and 10000) 3)create table kun.供应商(供应商号char(4) primary key,供

15、应商名char(16),地址char(30)4)create table kun.订购单(职工号char(8) foreign key references kun.职工,供应商号char(4) foreign key references kun.供应商,订单号char(6) primary key,订购日期datetime default 11/2/2013,金额money)5)create table kun.订购单明细(订购单号char(6) foreign key references kun.订购单,序号char(4),产品名称char(20),单价money check (单价0

16、) null,数量int check (数量0) not null,primary key (订购单号,序号)3:代码1)alter table kun.订购单add 完成日期datetime null2)alter table kun.订购单明细add constraint 数量check(数量between 0 and 1000)实验三 数据操作和完整性约束的作用实验名称:数据操作笔完整性约束的作用实验内容:在实验二的基础上完成数据的插入操作,然后进行部分修改和删除操作,在这些操作中体会数据完整性约束的作用。实验目的:熟练掌握SQL的INSERT,UPDATE和DELETE命令,深刻理解数

17、据完整性约束的作用以及约束时机。实验方法:在实验二的基础上首先用INSERT命令插入各个表的记录,然后使用UPDATE和DELETE命令对部分记录进行修改和删除操作。实验要求:1、 自行设计各个表的记录,其中仓库表至少5条记录,职工表至少10条记录、供应商表至少5条记录,订购单表至少20条记录,订购单明细表至少50条记录。2、 使用INSERT命令完成记录的插入操作,要求分别设计若干违反实体完整性、参照完整性和用户定义完整性约束的插入操作,并分析原因。3、 设计若干删除操作,体会执行删除操作时检查参照完整性规则的效果(要求涉及拒绝删除、空值删除和级联删除等不同的处理方式)。4、 设计若干更新操

18、作,体会执行更新操作时检查实体完整性规则、参照完整性规则和用户定义完整性规则的效果。5、 将x城市仓库的职工的工资提高10%。6、 用UPDATE语句完成订购单表金额字段的计算(提示:某张订购单的金额为该订购单所有订购项目(订购单明细)单价乘以数量的总和)。7、 设计23个删除操作,它需要另外一个表中的数据作为删除条件(例如,按指定的供应商名称删除订购单记录)。8、 在实验报告中给出具体的记录和设计的操作,并针对各种数据完整性检查,给出具体的分析和讨论。相关命令SQL的插入语句是INSERT,常用格式如下:INSERT INTO schema_name.table_name ( column_

19、list ) VALUES(expression | DEFAULT | NULL ,.n ) SQL的删除语句是DELETE,常用格式如下:DELETE FROM schema_name.table_name WHERE SQL更新记录的语句是UPDATE,常用格式如下:UPDATE schema_name.table_name SET column_name = expression | DEFAULT | NULL ,.n WHERE 其中,DELETE和UPDATE语句的WHERE子句可以嵌套子查询,从而完成若干其他表中记录或字段值的条件的删除或修改操作。实验操作:1:代码1)仓库记录

20、:insert into kun.仓库(仓库号,城市,面积)values (0001,新圩,500)insert into kun.仓库(仓库号,城市,面积) values (0002,新圩,600)insert into kun.仓库(仓库号,城市,面积) values (0003,新圩,700)insert into kun.仓库(仓库号,城市,面积) values (0004,新圩,500)insert into kun.仓库(仓库号,城市,面积) values (0005,新圩,500)insert into kun.仓库(仓库号,城市,面积) values (0006,新圩,800)

21、2) 职工记录:insert into kun.职工(职工号,仓库号,工资)values (99,1,2000)insert into kun.职工(职工号,仓库号,工资) values (98,2,3000)insert into kun.职工(职工号,仓库号,工资) values (97,3,3000)insert into kun.职工(职工号,仓库号,工资) values (96,4,3000)insert into kun.职工(职工号,仓库号,工资) values (95,5,3000)insert into kun.职工(职工号,仓库号,工资) values (94,6,3000

22、)insert into kun.职工(职工号,仓库号,工资) values (93,7,3000)insert into kun.职工(职工号,仓库号,工资) values (92,8,3000)insert into kun.职工(职工号,仓库号,工资) values (91,9,3000)insert into kun.职工(职工号,仓库号,工资) values (90,10,3000)insert into kun.职工(职工号,仓库号,工资) values (89,11,3000)3) 供应商记录insert into kun.供应商(供应商号,供应商名,地址)values (10,

23、梦华,阿拉斯加)insert into kun.供应商(供应商号,供应商名,地址) values (11,梦华,阿拉斯加)insert into kun.供应商(供应商号,供应商名,地址) values (12,梦华,阿拉斯加)insert into kun.供应商(供应商号,供应商名,地址) values (14,梦华,阿拉斯加)insert into kun.供应商(供应商号,供应商名,地址) values (15,梦华,阿拉斯加)insert into kun.供应商(供应商号,供应商名,地址) values (16,梦华,阿拉斯加)订购单记录insert into kun.订购单(职工

24、号,供应商号,订单号,订购日期,金额,完成日期)values (15,98,74,1/1/2013,1000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,97,98,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,96,97,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,95,9

25、6,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,94,95,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,93,94,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,92,93,1/1/2013,2000,1/1/2013)insert into ku

26、n.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,91,92,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,90,91,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,89,90,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values

27、 (16,88,88,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,87,87,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,86,86,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,85,85,1/1/2013,2000,1/1/2013)inser

28、t into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,84,84,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,83,83,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,82,82,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日

29、期) values (16,81,81,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,80,78,1/1/2013,2000,1/1/2013)insert into kun.订购单(职工号,供应商号,订单号,订购日期,金额,完成日期) values (16,79,77,1/1/2013,2000,1/1/2013)4) 订购单明细表insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量)values (81,99,dabian,2,3)insert i

30、nto kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (97,11,dabian,3,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (97,12,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (97,13,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (97,14,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量

31、) values (96,15,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (96,17,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (96,18,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (95,19,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (95,20,dabian,2,3)inser

32、t into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (94,21,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (94,22,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (93,23,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (93,24,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价

33、,数量) values (93,25,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (93,26,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (93,27,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (93,28,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (93,29,dabian,2,3)in

34、sert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,30,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,31,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,32,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,33,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称

35、,单价,数量) values (87,34,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,35,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,36,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,37,dabian,3,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,38,dabian,2,3

36、)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,39,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,40,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,41,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (87,42,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产

37、品名称,单价,数量) values (87,43,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (86,44,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (86,45,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (86,46,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (86,47,dabian,

38、2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (86,48,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (86,49,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (85,50,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (85,51,dabian,2,3)insert into kun.订购单明细(订购单号,序

39、号,产品名称,单价,数量) values (85,52,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (85,53,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (85,54,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (85,55,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (85,56,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (85,57,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (85,58,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (85,59,dabian,2,3)insert into kun.订购单明细(订购单号,序号,产品名称,单价,数量) values (85,60,dabian,2,3)insert into

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1