数据更新

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chenshanqiang/article/details/52154203

数据更新的分类

  1. 插入
  2. 修改
  3. 删除

插入语法格式

1、INSERT INTO<表名> [(<属性列1>[<属性列2 >)]
VALUES (<常量1> [<常量2>]    )

插入单个元组元组组

[例]  将一个新学生记录:
(学号:95020;姓名:陈冬;性别:男;所在系:IS;年龄:18岁)插入到Student表中。

INSERT
         INTO  Student
         VALUES ( '95020','陈冬','男','IS',18);

插入子查询结果

    INSERT 
    INTO <表名>  [(<属性列1> [,<属性列2>…  )]
    子查询;

    将子查询结果插入指定表中

修改数据

1、UPDATE  <表名>
    SET  <列名>=<表达式>[,<列名>=<表达式>]…
    [WHERE <条件>];

功能
      修改指定表中满足WHERE子句条件的元组

2、三种修改方式
(1)修改某一个元组的值
(2)修改多个元组的值
(3)带子查询的修改语句

修改某一个元组的值

[例]  将学生95001的年龄改为22岁。       

UPDATE  Student
         SET  Sage=22
         WHERE  Sno=' 95001 ';

修改多个元组的值

【例】将所有学生的年龄增加1岁

UPDATE  Student SET Sage=Sage+1;

没有where子句,说明要修改Student表中所有元组的年龄属性值

带子查询的修改语句

UPDATE      SC     SET    Grade=0     WHERE     'CS'=(SELETE   Sdept    FROM   Student   WHERE   Student.Sno=SC.Sno);

子查询:在Student表中找出修改了课程表的学生所在的系名

删除数据

1、格式DELETE  FROM  <表明>[WHERE  <条件>];

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

DELETE

FROM  student

2、三种删除方式

删除某一个元组的值

删除多个元组的值

带子查询的删除语句

删除某一个元组的值

【例】删除学号为9的学生记录

DELETE  FROM  Student  WHERE  Sno='9'

删除多个元组的值

【例】删除2号课程的所有选课记录

DELETE  FROM  SC  WHERE  Cno='2'

带子查询的删除语句

【例】删除计算机科学所有学生选课记录

DELETE  FROM  SC  WHERE  'CS'=(SELETE  Sdept  FROM  Student  WHERE  Student.Sno=SC.Sno)

子查询:在Student表中找出选修了课程的学生所在的系名。

更新操作与数据一致性


DBMS在执行插入、删除、更新语句时
必须保证数据库一致性
必须有事务的概念和原子性
完整性检查和保证






阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页