加入收藏 | 设为首页 | 会员中心 | 我要投稿 武陵站长网 (https://www.50888.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

insert语句一般用于插入数据,应该是对数据库的()操作

发布时间:2022-12-10 14:05:11 所属栏目:MySql教程 来源:互联网
导读: 设某商品经营管理系统使用SQL Server 2000数据库管理系统。在数据库中存在销售明细表,其建表语句为:
CREATE TABLE销售明细表(
销售单据编号varchar(8),
商品编号varchar(8),
单价money

设某商品经营管理系统使用SQL Server 2000数据库管理系统。在数据库中存在销售明细表,其建表语句为:

CREATE TABLE销售明细表(

销售单据编号varchar(8),

商品编号varchar(8),

单价money,

数量int,

总价money

) ,

为了保证数据的一致性,建有如下触发器:

CREATE TRIGGER AutoCountSum

ON销售明细表FOR INSERT,UPDATE

AS

DECLARE@UnitPrice money,@Quantity int

DECLARE@Amount money

SELECT@UnitPrice=单价,@Quantity=数量

FROM inserted

SET@Amount=@UnitPrice*@Quantity

UPDATE销售明细表SET总价=@Amount

WHERE销售单据编号IN(SELECT销售单据编号FROM inserted)

AND商品编号IN(SELECT商品编号FROM inserted)

①设系统运行一段时间后此表中有近一百万条记录,此时发现对该表的插入操作速度很慢,请分析插入速度慢的原因。(3分)

在不改变数据库服务器硬件和表结构、不清理数据的情况下,请说明应如何优化此表的插入操作。(2分)

②在解决了①中的问题后,程序员在数据库中执行如下SQL语句:

SELECT商品编号,sum(总价)FROM销售明细表

WHERE单价>50

GROUP BY商品编号

请在不改变该SQL语句的情况下,给出提高该查询执行效率的方案。(5分)

请帮忙给出正确答案和分析数据库插入操作,谢谢!

(编辑:武陵站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!