数据库系统概论实验二:SQL创建数据库

实验一为探索性实验,主要是使用企业管理器进行建库建表等过程。
以下为实验二内容:

一 实验题目: SQL SERVER2008查询分析器的使用
二 实验目的:熟悉SQL SERVER2008 环境,熟悉查询分析器的使用,能够熟练运用sql命令完成数据库,基本表、主码、外码和其它必要的约束条件的定义。
三 实验内容及要求:
题目一:
1 利用sql建立学生信息数据库,并定义以下基本表:
学生(学号,年龄,性别,系号)
课程(课号,课名,学分,学时)
选课(学号,课号,成绩)
定义主码、外码、和年龄、学分、学分的取值范围。
2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。
题目二:
1 利用sql建立图书管理数据库,并定义以下基本表:
图书(书号,书名,价格,出版社)
读者(卡号,姓名,年龄,所属单位)
借阅(书号,卡号,借阅日期)
定义主码、外码、和年龄、价格的取值范围。
2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。
题目三:
1 利用sql建立商品信息数据库,并定义以下基本表:
商品(编号,品名,进价,库存,售价,厂商编号)
顾客(卡号,姓名,电话,积分)
厂商(编号,厂址,名称、电话、经理)
销售(卡号,商品编号,数量,日期)
定义主码、外码、和价格、积分的取值范围。
2 在表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。
题目四:
1 利用sql建立图书信息数据库,并定义以下基本表:
图书(书号,书名,作者编号,价格,出版社编号)
作者(编号,姓名,电话)
出版社(编号,出版社名称,地址)
定义主码、外码、和价格的取值范围。
2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。
题目五:
1 利用sql建立零件信息数据库,并定义以下基本表:
零件(编号,名称,颜色,生产车间号)
车间(编号,名称,人数,主任)
产品(编号,名称,车间编号)
使用(产品编号,使用零件编号,个数)

定义主码、外码、和人数、个数的取值范围。
2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。
题目六:
1 利用sql建立药品信息数据库,并定义以下基本表:
药品(编号,名称,价格,厂商编号)
处方(药品号,数量,医生编号)
医生 (编号,姓名,科室,职称)
定义主码、外码、和数量、价格的取值范围。
2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。
题目七:
1 利用sql建立教材数据库,并定义以下基本表:
学生(学号,年龄,性别,系名)
教材(编号,书名,出版社编号,价格)
订购(学号,书号,数量)
出版社(编号,名称,地址)
定义主码、外码、和价格、数量的取值范围。
2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。
题目八:
1 利用sql建立雇员信息数据库,并定义以下基本表:
员工(编号,姓名,性别,年龄,部门编号,年薪)
部门(编号,名称,人数,负责人)
项目(编号,名称,负责部门)
定义主码、外码、和年龄、学分、学分的取值范围。
2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。
题目九:
1 利用sql建立帐户信息数据库,并定义以下基本表:
帐户(编号,姓名,余额,建立日期,储蓄所编号)
储蓄所(编号,名称,地址,人数,所属城市)
借贷(帐户,借贷类型,金额,日期)
定义主码、外码、和人数、余额的取值范围。
2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。
题目十:
1 利用sql建立仓库信息数据库,并定义以下基本表:
仓库(编号,保管员编号,面积)
保管员(编号,姓名,年龄,电话、月薪)
商品(编号,品名,仓库编号、数量,单价)
定义主码、外码、和年龄、面积的取值范围。
2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。

五 实验报告要求:
1 给出使用查询分析器的步骤
2 给出建库、建表的SQL 命令脚本
3 实验中出现的问题和解决方法

此后的实验我都是围绕题目三进行实验的,其他题目内容将会省略。
建立数据库:

create database 商品信息
on primary(
name='goodsinfo_data',
filename='D:\test\goodesinfo_data.mdl',
size=10,
maxsize=100,
filegrowth=5
)
log on(
name='goodsinfo_log',
filename='D:\test\goodsinfo_log.ldf',
size=10,
maxsize=100,
filegrowth=5
)

建立相关基本表:

create table 商品(
编号 bigint primary key not null,
品名 varchar(20) not null,
进价 float check(进价>0) null,
库存 int null,
售价 float check(售价>0)null,
厂商编号 bigint null
);

create table 顾客(
卡号 bigint primary key not null,
姓名 varchar(10) not null,
电话 varchar(11) null,
积分 int not null
);

create table 厂商(
编号 int primary key not null,
厂址 varchar(50) null,
名称 varchar(30) not null,
电话 varchar(15) not null, 
经理 varchar(10) null
);
create table 销售(
卡号 bigint not null foreign key references 顾客(卡号) ,
商品编号 bigint not null foreign key references 商品(编号),
数量 int check(数量>=0),
日期 date not null
);

插入数据:

insert into 商品(编号,品名,进价,库存,售价,厂商编号)
values(1001,'雀巢咖啡',3.9,210,5.9,8001),
(1002,'蒙牛纯牛奶',1.9,200,2.9,8002),
(1003,'旺仔牛奶',2.5,150,2.9,8003),
(1004,'泡芙',4.8,162,6.8,8004),
(1005,'德芙巧克力',10.3,45,15.2,8005),
(1006,'伊利纯牛奶',20.3,90,30.5,8006),
(1007,'伊利甜牛奶',19.3,100,29.0,8006),
(1008,'伊利纯甄酸奶',28.8,110,35.6,8006),
(1009,'伊利金典纯牛奶',48.8,130,52.5,8006),
(1010,'伊利优酸乳',20.3,120,25.5,8006),
(1011,'伊利奶粉',18.8,130,24.6,8006);


insert into 顾客(卡号,姓名,电话,积分)
values(2001,'张三','15718888888',1000),
(2002,'罗二','15710088888',70),
(2003,'小王','15710066666',1100),
(2004,'小刘','15710077777',90);

insert into 厂商(编号,厂址,名称,电话,经理)
values(8001,'北京市朝阳区人民路号','雀巢食品有限公司','05316888888','李经理'),
(8002,'内蒙古自治区呼和浩特','蒙牛食品有限公司','05316008888','张经理'),
(8003,'四川省成都市','旺仔食品有限公司','08736700666','陈经理'),
(8005,'四川省成都市','德芙食品有限公司','08736700777','罗经理'),
(8006,'内蒙古自治区呼和浩特','伊利乳品','05316006666','业经理');

insert into 销售(卡号,商品编号,数量,日期)
values(2001,1001,1100,getdate()),
(2002,1002,50,'2020-11-09'),
(2003,1009,650,'2020-11-11'),
(2003,1009,420,'2020-11-19');

 

 

1.腾龙梦屋文章内容无特殊注明皆为源儿原创,转载请注明来源,谢谢!
2.若有相关文章侵犯您的权益,请联系源儿删除,谢谢!
3.相关软件、资料仅供学习参考使用,在24h内务必删除!
腾龙梦屋 » 数据库系统概论实验二:SQL创建数据库
加速支持