文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

计算机三级数据库大题及答案

2023-09-26 09:59

关注

(1) 设在SQL Server 2008某数据库中有商品表和销售表,表的定义如下:
CREATE TABLE 商品表(
  商品号 char(10) PRIMARY KEY,
  商品名 char(20) NOT NULL,
  销售总量 int DEFAULT 0)
CREATE TABLE 销售表(
  商品号 char(10),
  销售时间 datetime,
  销售数量 int NOT NULL,
  PRIMARY KEY(商品号,销售时间),
  FOREIGN KEY(商品号) REFERENCES 商品表(商品号))
现要创建一个具有如下功能的触发器:每当在销售表中插入一条销售记录时,修改商品表中对应商品的销售总量,假设一次只插入一条销售记录。请补全下列代码。

CREATE TRIGGER tri_insert on [1] FOR [2]AS[3] 商品表 [4] 销售总量= [5] +(SELECT 销售数量 FROM [6])WHERE 商品号 IN (SELECT 商品号 FROM Inserted)

参考答案:

  [1]:销售表  [2]:INSERT  [3]:UPDATE  [4]:SET  [5]:销售总量或商品表.销售总量  [6]:Inserted

(2)设在SQL Server 2008某数据库中有商品表和销售表,表的定义如下:
CREATE TABLE 商品表(
  商品号 char(10) PRIMARY KEY,
  商品名 char(20) NOT NULL,
  单价 int DEFAULT 0)
CREATE TABLE 销售表(
  商品号 char(10),
  销售时间 datetime,
  销售数量 int NOT NULL,
  PRIMARY KEY(商品号,销售时间),
  FOREIGN KEY(商品号) REFERENCES 商品表(商品号))
现要创建一个具有如下功能的用户自定义标量函数:根据指定的商品号,返回该商品的销售总金额。请补全下列代码(请不要为表起别名)。

CREATE FUNCTION dbo.f_TotalQty(@GoodID [1]) [2]intAS [3]RETURN(SELECT [4](单价 * 销售数量) FROM 商品表          JOIN [5]          ON [6]          WHERE 商品号 = [7]) [8]

答案:

  [1]:Char  [2]:RETURNS  [3]:BEGIN  [4]:SUM  [5]:销售表  [6]:商品表.商品号 = 销售表.商品号 或 销售表.商品号 = 商品表.商品号  [7]:@GoodID  [8]:END

(3)设在SQL Server 2008某数据库中有汽车表和销售表,表的定义如下:
CREATE TABLE 汽车表(
  汽车型号 char(10) PRIMARY KEY,
  汽车名称 char(20),
  颜色 char(10),
  价格 int)

CREATE TABLE 销售表(
  汽车型号 char(10),
  销售时间 datetime,
  销售数量 int,
  PRIMARY KEY(汽车型号,销售时间),
  FOREIGN KEY(汽车型号) REFERENCES 汽车表(汽车型号))

现要创建一个具有如下功能的存储过程:查询指定日期范围内汽车的销售情况,列出汽车型号和销售总数量,包括没有被销售过的汽车。请补全下列代码。

CREATE [1] p1  @start_date date, @end_date dateAS  SELECT [2].汽车型号, [3]   FROM 汽车表 [4] 销售表 ON 汽车表.汽车型号 = 销售表.汽车型号   WHERE 销售时间 BETWEEN [5] AND [6]   GROUP BY 汽车表.汽车型号

参考答案:

  [1]:PROC或PROCEDURE  [2]:汽车表  [3]:SUM(销售数量)  [4]:LEFT JOIN或LEFT OUTER JOIN  [5]:@start_date  [6]:@end_date

(4)设在SQL Server 2008某数据库中有汽车表和销售表,表的定义如下:

CREATE TABLE 汽车表(
  汽车型号 char(10) PRIMARY KEY,
  汽车名称 char(20),
  颜色 char(10),
  销售总数量 int default 0)

CREATE TABLE 销售表(
  汽车型号 char(10),
   销售时间 datetime,
  销售数量 int,
  PRIMARY KEY(汽车型号,销售时间),
  FOREIGN KEY(汽车型号) REFERENCES 汽车表(汽车型号))

现要创建一个具有如下功能的后触发型触发器:每当在销售表中插入数据时,自动更新汽车表中相应型号的汽车的销售总数量(假定一次只插入一行数据)。请补全下列代码。

CREATE TRIGGER tri_sales ON [1] AFTER [2]AS  DECLARE @Sales_Amount int  SET @Sales_Amount= (     SELECT 销售数量 FROM [3])  UPDATE 汽车表 SET 销售总数量 = 销售总数量 + [4]     WHERE 汽车型号 IN ([5])

答案:

  [1]:销售表  [2]:INSERT  [3]:INSERTED  [4]:@Sales_Amount  [5]:SELECT 汽车型号 FROM INSERTED

(5)设在SQL Server 2008某数据库中有汽车表和销售表,表的定义如下:
CREATE TABLE 汽车表(
  汽车型号 char(10) PRIMARY KEY,
  汽车名称 char(20),
  颜色 varchar(10),
  价格 int)

CREATE TABLE 销售表(
  汽车型号 char(10),
  销售时间 datetime,
  销售数量 int,
  PRIMARY KEY(汽车型号,销售时间),
  FOREIGN KEY(汽车型号) REFERENCES 汽车表(汽车型号))

现要创建一个具有如下功能的存储过程:查询指定型号的汽车的销售总数量,并且销售总数量用输出参数返回。请补全下列代码。

CREATE [1]P1  @model varchar(10), @total int [2]AS [3] @total = (      SELECT  [4]FROM 销售表 s JOIN 汽车表 c ON [5]WHERE 汽车型号 = [6])

参考答案:

  [1]:PROC或PROCEDURE  [2]:Output  [3]:SET  [4]:SUM(销售数量)  [5]:s.汽车型号 = c.汽车型号 或 c.汽车型号 = s.汽车型号  [6]:@model

(6)设在SQL Server某数据库中有房屋出租表,表的定义如下:
CREATE TABLE 出租表(
  房屋号 char(10),
  出租日期 datetime,
  租期 int not null,–月数
  到期日期 datetime,
  PRIMARY KEY(房屋号,出租日期));
现要创建一个具有如下功能的触发器:每当在出租表中插入一行数据(房屋号,出租日期,租期)时,自动计算出本行数据的“到期日期”。请补全下列代码。

CREATE TRIGGER tri ON [1] FOR insertAS[2] 出租表 SET 到期日期 = dateadd([3],租期,出租日期)WHERE 房屋号 = (SELECT 房屋号 FROM [4])  and [5]

参考答案:

[1]出租表[2]UPDATE[3]month[4]inserted[5]出租日期 = (SELECT 出租日期 FROM inserted)或者(SELECT 出租日期 FROM inserted) = 出租日期

(7)设在SQL Server某数据库中有房屋及租赁表,表的定义如下:
CREATE TABLE 房屋表(
  房屋号 char(10) PRIMARY KEY,
  房屋地址 char(20) not null:
  面积 int,
  月租金 int)

CREATE TABLE 租赁表(
  房屋号 char(10),
  租赁日期 datetime,
  租赁月数 int not null,
  本次总租金 int,
  PRIMARY KEY(房屋号,租赁日期),
  FOREIGN KEY(房屋号) REFERENCES房屋表(房屋号))

现要创建一个具有如下功能的触发器:每当在租赁表中插入一行数据(房屋号,租赁日期,租赁月数)时,自动计算出该房屋的本次总租金。请补全下列代码。

CREATE TRIGGER tri ON [1] FOR [2]AS[3] @x int --声明保存月租金的变量SET @x = (SELECT 月租金 FROM 房屋表 WHERE 房屋号=(SELECT 房屋号 FROM [4]))UPDATE 租赁表 SET 本次总租金=租赁月数*[5] FROM 租赁表 as a JOIN [6]  as bon a.房屋号=b.房屋号 and a.租赁日期=b.租赁日期

参考答案:

[1]租赁表[2]INSERT[3]DECLARE [4]inserted[5]@x[6]inserted

(8)CREATE TABLE 房屋表(
  房屋号 char(10) PRIMARY KEY,
  房屋地址 char(20) not null,
  面积 int,
  月租金 int)

CREATE TABLE 租赁表(
  房屋号 char(10),
  租赁日期 datetime,
  租赁月数 int not null,
  PRIMARY KEY(房屋号,租赁日期),
  FOREIGN KEY(房屋号) REFERENCES 房屋表(房屋号))
现要创建一个具有如下功能的存储过程:根据输入的房屋号,计算该房屋的历史租金总和并用输出参数返回。请补全下列代码。

CREATE [1] P1@room char(10),     ----输入参数:房屋号@total int [2] ----输出参数:租金总和AS[3] @total=(    SELECT [4](月租金 * 租赁月数)    FROM 房屋表 a JOIN 租赁表 b ON a.房屋号=b.房屋号    WHERE [5])

参考答案:

[1]Proc,Procedure[2]output[3]set[4]sum[5]a.房屋号=@room,b.房屋号=@room或@room=a.房屋号,@room=b.房屋号

来源地址:https://blog.csdn.net/weixin_51169222/article/details/129387866

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯