创建数据库、创建表、创建视图、创建触发器的**保存在考试结果文件夹下,文件名为。
1.创建数据库。
为“商品**系统”创建后台数据库:
1)数据库名为spgy。
2)主数据文件逻辑名称为spgy_data,物理名称为spgy_存放在c盘根目录下,初始大小为3mb,文件增长不受限制,增长量为1mb。
3)事务日志文件逻辑名称为spgy_log,物理名称为spgy_存放在c盘根目录下,初始大小为1mb,文件增长最大为5mb,增长量为10%。
2.创建表。
在spgy数据库中创建如下三张表,表结构如下:
1)表名:gys
2)表名:sp
创建名为ck_sp的check约束,设置库存数量字段的值必须大于等于0。
3)表名:jg
创建名为ck_jg的check约束,设置截止时间(jzsj)必须大于等于起始时间(qssj)。
创建名为ck_jg_1的check约束,设置零售价(lsj)必须大于等于会员价(hyj)。
4)表名:gy
创建名为ck_gy的check约束,设置**数量(gysl)字段的值必须大于0。
3.创建视图。
1)视图view1:查询“精品红富士”本年的**情况。
2)视图view2:查询“精品红富士”最近一次进货的进价。提示:可按照进货时间排序。
3)视图view3:查询库存充足的商品基本信息,库存充足指现库存量大于100。该视图定义加密,即带with encryption参数。
4)视图view4:查询统计各商品所有**的**总数量,给查询结果的字段取别名,为:条形码、**总数量。
5)视图view5:查询统计各类商品的商品数目。给查询结果的字段取别名,为:商品类型、商品数目。
4.创建触发器。
创建触发器,实现当有商品**时,该商品的现库存数量自动增加。触发器名为tjgy。提示:在gy表中创建insert触发。不用判断sp表中是否有该商品信息。
create trigger tjgy on [dbo].[gy]
for insert
asdeclare @gysl numeric(10,2),@txm varchar(30)
select @gysl=gysl,@txm=txm from inserted
update sp set kcsl=kcsl+@gysl where txm=@txm
创建触发器scgy,实现当删除某次**信息时(即删除**表的某条记录),库存自动更新。提示:在**表中创建delete触发器。
create trigger scgy on [dbo].[gy]
for delete
asdeclare @gysl numeric(10,2),@txm varchar(30)
select @gysl=gysl,@txm=txm from deleted
update sp set kcsl=kcsl-@gysl where txm=@txm
创建触发器xxgy,实现当修改某次**信息时(修改**数量或者商品条形码),库存自动更新。提示:在**表中创建update触发器。
create trigger xxgy on [dbo].[gy]
for update
asif update(gysl) or update(txm)
begindeclare @yuangysl numeric(10,2), xingysl numeric(10,2),@yuantxm varchar(30), xintxm varchar(30)
select @yuangysl=gysl,@yuantxm=txm from deleted
select @xingysl=gysl,@xintxm=txm from inserted
update sp set kcsl=kcsl-@yuangysl where txm=@yuantxm
update sp set kcsl=kcsl+@xingysl where txm=@xintxm
end5.在查询分析中编写sql脚本,**保存在考生文件夹中。文件名为1. sql
1)往gy表中添加如下记录。
gy表中的数据。
2)查询本月各商品的**情况,查询结果包括gyh、gysh、gysl、gysj。
3)根据实际情况为sp表的spm字段创建索引,索引名为spindex。
4)将“精品红富士”的库存数量增加10。
5)查询所有**信息,结果按照商品条形码降序排列,如果条形码相同,按照**时间升序排列。
完全备份数据库spgy,备份文件名为sjkbf,备份文件保存在考生文件夹中(d:esult文件夹中)。
最后分离spgy数据库,复制该数据库的数据文件和事务日志文件到考生文件夹中(d:esult文件夹中)
sql复习题答案
1 创建一个数据库,数据库名称为自己名字的拼音。该数据库有1个10mb和一个20mb的数据文件和2个20mb的事务日志文件,数据文件分别位于d盘的data,e盘的 data文件夹下,两个数据文件的最大尺寸分别为无限大和100mb,增长速度分别为10 和1mb,事务日志文件都位于f盘的log目录下,最...
sql复习题库
在sql中,建立表用的命令是 indexsql语言中,条件年龄between 15 and 35表示年龄在15至35之间,且 a.包括15岁和35岁b.不包括15岁和35岁。c.包括15岁但不包括35岁d.包括35岁但不包括15岁。在ms sql server中,用来显示数据库信息的系统存储过程是。...
SQL查询复习题
1 有两个关系 c cno,cn,pcno sc sno,cno,g 其中,c为课程表,对应的属性分别是课程号 课程名 选修课号 sc为学生选课表,对应的属性分别是学号 课号和成绩。用sql语言写出 1 对关系sc中课号等于c1的选择运算。2 对关系c的课号 课程名的投影运算。3 两个关系的自然连接...