数据库系统概论5版第三章关系数据库标准语言SQL【下】——数据更新(insert、update、delete)

四、数据更新

数据更新操作有三种:向表中添加若干行数据、修改表中的数据、删除表中的若干行数据

(一)、插入数据(insert)

1、插入一个元组

插入一个元组语句格式:

  INSERT

  INTO <表名> [(<属性列1>[,<属性列2 >…)]

  VALUES (<常量1> [,<常量2>]… );

//语句含义:新元组插入into到表中,属性列1的值为常量1……

例题:[3.69]将一个新学生元组学号:201215128;姓名:陈冬;性别:男;所在系:IS;年龄:18插入到Student表中。

    INSERT

    INTO  Student (Sno,Sname,Ssex,Sdept,Sage)

    VALUES ('201215128','陈冬','男','IS',18);

2、插入子查询结果(插入多个元组)

插入子查询语句格式:

    INSERT

     INTO <表名>  [(<属性列1> [,<属性列2>…  )]

   子查询;

例题:

        INSERT

       INTO  Dept_age(Sdept,Avg_age)

              SELECT  SdeptAVG(Sage)

              FROM     Student

              GROUP BY Sdept;

(二)、修改数据(update)

三种修改方式

  • 修改某一个元组的值
  • 修改多个元组的值
  •  带子查询的修改语句

功能:

  • 修改指定表中满足WHERE子句条件的元组
  • SET子句给出<表达式>的值用于取代相应的属性列
  • 如果省略WHERE子句,表示要修改表中的所有元组

修改数据语句格式:

UPDATE  <表名>

    SET  <列名>=<表达式>[,<列名>=<表达式>]…

    [WHERE <条件>];

例题: [3.73]  将学生201215121的年龄改为22

         UPDATE  Student

         SET Sage=22

         WHERE  Sno=' 201215121 ';

[3.74]  将所有学生的年龄增加1岁。

           UPDATE Student

           SET Sage= Sage+1;

 [3.75将计算机科学系全体学生的成绩置零。

        UPDATE SC

        SET     Grade=0

        WHERE Sno  IN

               (SELETE Sno

                FROM     Student

                WHERE  Sdept= 'CS' );

(三)、删除数据(delete)

删除数据语句格式:

DELETE

FROM     <表名>

 [WHERE <条件>];

功能:删除指定表中满足WHERE子句条件的元组

WHERE子句:

  • 指定要删除的元组
  • 缺省表示要删除表中的全部元组,表的定义仍在字典中

三种删除方式:

  • 删除某一个元组的值
  •  删除多个元组的值
  • 带子查询的删除语句

例题:    [3.76]  删除学号为201215128的学生记录。

        DELETE

         FROM Student

         WHERE Sno= 201215128 ';

    [3.77]  删除所有的学生选课记录。

        DELETE

        FROM SC;

 

    [3.78]  删除计算机科学系所有学生的选课记录。

  DELETE

  FROM  SC

  WHERE  Sno  IN

  (SELETE  Sno

              FROM   Student

              WHERE  Sdept= 'CS') ;

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值