fevsix

~~~~~~

已知产品销售数据库cpxs包含如下数据表:

1)产品表:产品编号,产品名称,价格,库存量。

2)销售商表:客户编号,客户名称,地区,负责人,电话。

3)产品销售表:销售日期,产品编号,客户编号,数量,销售额。

写出SQL完成如下操作的SQL语句:

1.写出产品表的建表语句

1、 2.向产品表中插入如下记录:

0001 空调 3000 200

0002 冰箱 2500 300

3.将产品表中每种商品价格打八折后进行显示

4.查找价格在2000到2900之间的产品名称。

5.在产品销售表上创建“冰箱”产品表的视图bxcp

(1)

CREATE TABLE cp(

id INT PRIMARY KEY,

NAME VARCHAR(20),

val DOUBLE,

cnt INT DEFAULT 0

);

(2)

INSERT INTO cp VALUES(0001,'空调'3000,200);

INSERT INTO cp VALUES(0002,"冰箱'2500,300);

(3)

SELECT id, NAME,val*0.8 AS VALUE,cnt FROM cp;

(4)

SELECT NAME FROM cp WHERE val>=2000 AND val<=3000;

(5)

CREATE VIEW bingxiang AS (SELECT cpxs.* FROM cp,cpxs WHERE cp.id=cpxs.id AND cp.name="冰箱");

 

 

~~~~~~~

已知进销存数据库Jxcxt包含如下数据表:

1)商品表:商品id(自增1),商品名称、单位、单价, 商品状态

2)库存表:库存id(自增1),商品id,库存数量

2、

请完成如下操作的SQL语句,表名和列名必须和上面的一致:

1、创建以上两个表的SQL语句;

2、在商品表上创建一个触发器(名字自定),当新增商品时自动在库存表中插入该商品的库存信息(库存数量为0)。

(1)

CREATE TABLE sp(

id INT AUTO_INCREMENT PRIMARY KEY,

NAME VARCHAR(20),

dw VARCHAR(10),

val DOUBLE,

STATUS INT

);

CREATE TABLE kc(

id INT AUTO_INCREMENT PRIMARY KEY,

spid INT,

cnt INT

);

(2)

DELIMITER $$

CREATE TRIGGER adds AFTER INSERT ON sp FOR EACH ROW

BEGIN

DECLARE cnt1 INT;

DECLARE cnt2 INT;

SELECT COUNT(*) INTO cnt1 FROM sp WHERE NAME=new.name;/*查询该商品的数量*/

IF cnt1=1 THEN

SELECT id INTO cnt2 FROM sp WHERE NAME=new.name;/*查询该商品的id*/INSERT INTO kc(spid,cnt) VALUES(cnt2,0);

END IF;

END$$

DELIMITER ;

 

~~~~~~

已知进销存数据库Jxcxt包含如下数据表:

1)商品表:商品id, 商品名称,单位,单价,商品状态

2)库存表:库存id, 商品id, 库存数量

3、

请完成如下操作的SQL语句,表名和列名必须和上面的一致:

1、创建以上两个表的SQL语句;

2、创建一个存储过程(名字自定),实现商品表的的插入,需要判断当前商品名称是否存在。

(1)

与上一问相同,不做赘述

(2)

DELIMITER $$

CREATE PROCEDURE addsp(IN NAME VARCHAR(20),IN dw VARCHAR(10),IN val DOUBLE,IN STATUS INT)

BEGIN

DECLARE cnt INT DEFAULT 0;

SELECT COUNT(*) INTO cnt FROM sp WHERE sp.name=NAME;/*判断当前名称商品是否存在*/

IF cnt=0 THEN

INSERT INTO sp(NAME,dw,val,STATUS) VALUES(NAME,dw,val,STATUS); END IF;

END $$

~~~~~~

已知选课管理系统Xkglxt包含如下数据表:

1)学生表: 学生id, 学号,姓名,专业, 年级, 姓名拼音缩写

2)课程表:课程id, 课程名称,学分

3)选课表: 选课id, 学生id,课程id, 成绩

4、

请完成如下操作的SQL语句,表名和列名必须和上面的一致:

1、创建以上三个表的SQL语句;

2、创建视图V_选课,其中包含这些字段:选课id,学号,姓名,课程名,成绩;

3、查询张三的数据开发技术课程的成绩。

(1)

CREATE TABLE xs(

id INT PRIMARY KEY,

xh VARCHAR(20),

NAME VARCHAR(20),

zy VARCHAR(30),

grade VARCHAR(10),

sx VARCHAR(20)

);

CREATE TABLE kc(

id INT PRIMARY KEY,

NAME VARCHAR(30),

grade DOUBLE

);

CREATE TABLE xk(

id INT PRIMARY KEY,

xsid INT,

kcid INT,

grade DOUBLE

);

(2)

CREATE VIEW v_xK AS (SELECT xk.'id',xs.'sx`,xs.'name` AS xsname,kc.'name',xk. `grade` FROM xs,kc,xk WHERE xs. 'id`=xk.xsid' AND kc. id'=xk.'kcid` and xk.'name'='数据开发技术);/*注意一下学生姓名和课程姓名中的一个需要重命名*/

(3)

SELECT xk.`grade`FROM xk WHERE xsid=(SELECT xs. id' FROM xs WHERE NAME="张三") AND xk.'kcid`=(SELECT kc.'id'FROM kc WHERE kc.'name`='数据开发技术);/*注意子查询书写即可*/

 

~~~~~~

按照要求,完成以下操作。

要求需要有以下二个表:

1xranb(联系人表)其字段为(联系人编号、姓名、联系电话、家庭地址)。

4/6 通话开始时间、通知结束时间、通话类别、通话状态),

(短信记录编号、联系人编号、接发时间、短信内容、短信类别)。

请在MYSQL下建立这个数据库,数据库名为:TXLSJK。字段名以及字段数据类型可自拟。

2、在联系人表中插入以下5条记录:

(1、生敏红,15882155608 河南次阴市中学数;)

(2,张花莉,18953991767,河南洛阳市武汉路2号)

1、 (3,梁宝丽,13752317719,河南洛阳市大学路3号)

河南洛阳市大学路5号)

(1.1,当前系统时间,你的书已到请速来领取,1)

更新联系人编号为4的联系人电话为13938801001

依据联系人表和短信记录表建立视图:_1xren_dxj1b(联系人编号、姓名、短信内容、短信类别)

一个触发器,当删除联系人时,删除该联系人的通话记录和短信记录

8、备份数据库的结构和数据,导出SQL文件名为:txl_sjk.sql。

9、将txl_sjk.sql上传至服务器。

(1)

CREATE TABLE Ixrenb(

id INT PRIMARY KEY,

NAME VARCHAR(20),

phone VARCHAR(20),

address VARCHAR(30)

);

CREATE TABLE txilb(

id INT PRIMARY KEY AUTO_INCREMENT,

Ixrid INT,

start_time DATETIME,

end_time DATETIME,

Ib INT,

STATUS INT

);

CREATE TABLE dxjlb(

id INT PRIMARY KEY AUTO_INCREMENT,

Ixrid INT,

times DATETIME,

TEXT VARCHAR(300),

STATUS INT

);

(2)

INSERT INTO Ixrenb VALUES(1,'朱敏红','15857455696',河南洛阳市中学路1号);INSERT INTO Ixrenb VALUES(2,'张花莉','18953991767',河南洛阳市武汉路2号);INSERT INTO Ixrenb VALUES(3,梁宝丽','13752317719',河南洛阳市大学路3号);INSERT INTO lxrenb VALUES(4,'王保志'13057676112',河南洛阳市大学路4号);INSERT INTO lxrenb VALUES(5,'李君江','13752309239','河南洛阳市大学路5号);

(3)

INSERT INTO dxilb VALUES(1,1,SYSDATE(0,你的书已到请速来领取;1);

(4)

UPDATE xrenb SET phone='13938801001' WHERE id=4;

(5)

ALTER TABLE Ixrenb ADD INDEX idx_1 (id);

ALTER TABLE Ixrenb ADD INDEX idx_2 (phone

(6)

CREATE VIEW view1 AS (SELECT Ixrenb.'id`,lxrenb.'name`,dxilb.'text',dxilb.'status

 

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值