数据库实验:数据更新

数据库实验:数据更新

实验过程

(1)INSERT 基本语句(插入全部列的数据)

(2)INSERT 基本语句(插入部分列的数据)

(3)UPDATE 语句(修改部分记录的部分列值)

(4)DELETE 语句(删除给定条件点的所有记录)


 

一、实验内容

1. 实验目的

熟悉数据库的数据更新操作,能够使用SQL 语句对数据库进行数据的插入、修改、删除操作。

2. 实验内容及要求

针对TPC-H 数据库设计单元组插入、批量数据插入、修改数据和删除数据等SQL 语句。理解和掌握INSERT、UPDATE 和DELETE 语法结构的各个组成成分,结合嵌套SQL 子查询,分别设计几种不同形式的插入、修改和删除数据的语句,并调试成功。

3. 实验重点和难

实验重点:插入、修改和删除数据的SQL。

实验难点:与嵌套SQL 子查询相结合的插入、修改和删除数据的SQL 语句;利用一个表的数据来插入、修改和删除另外一个表的数据。

4、实验过程

(1)INSERT 基本语句(插入全部列的数据)

插入一条顾客记录,要求每列都给一个合理的值。

涉及Customer 表

INSERT INTO Customer

VALUES(8,'Mark','郑州',1,5686055,1.6, 'North','无'); #每列都对应写入值

 

(2)INSERT 基本语句(插入部分列的数据)

插入一条订单记录,给出必要的几个字段值。

涉及Lineitem 表


INSERT INTO

Orders(Orderkey,Custkey,Totalprice,Orderdate,Comment)

VALUES(5,8,11000,2020-06-09,'无'); #列出的列和写入的值对应

 

(3)UPDATE 语句(修改部分记录的部分列值)

“金仓集团”供应的所有零件的供应成本价下降10%。

涉及PartSupp 表中的supplycost,suppkey ,Suppier 表中的name, suppkey

UPDATE PartSupp

SET Retailprice = Retailprice*(1-0.1)

WHERE Suppkey = (  #找到需要修改的记录

        SELECT Suppkey

        FROM Supplier 

    WHERE Name = '金仓集团';

 

(4)DELETE 语句(删除给定条件点的所有记录)

删除顾客张三的所有订单记录。

涉及Lineitem,Orders,Customer 表

DELETE FROM Lineitem L #先删除张三的订单明细记录

WHERE Orderkey IN(

        SELECT Orderkey

        FROM Orders O,Customer C

        WHERE O.Custkey = C.Custkey AND

        C.Name = '张三');

 

DELETE FROM Orders #再删除张三的订单记录

WHERE Custkey = (

        SELECT Orderkey

        FROM Orders O,Customer C

        WHERE O.Custkey = C.Custkey AND

        C.Name = '张三');

 

实验效果及分析

这次实验主要内容是数据更新,包括了数据插入,数据更新及数据删除。数据插入需要注意是否全部给值,如果只给必要的几个字段添加值需要指出添加值的字段,和值一一对应。数据更新要先找到需要更新的数据(配合查询)再进行更新操作。删除数据记录使用关键字DELETE(删除数据库或表用关键字DROP),WHERE后面写删除数据需要满足的条件。注意,如果存在主外键关系,应该先删除子表中的数据再删除主表中的数据。

 

 

  • 4
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值