MySQL第三章——数据更新

数据更新

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

  • 插入数据

            SQL的数据插入语句 insert 有两种形式:插入一个元组、插入子查询结果(可以一次插入多个元组)

  1. 插入元组

               insert into <表名> [(<属性列1> [,<属性列2>]……)] values (<常量1> [,<常量2>]……);

           功能:将新元组插入指定表中。into 子句中没有出现的属性列,新元组在这些列上将取空值。注意:在表定义时说明了 not null 的属性列不能取空值,否则会出错。如果 into 子句中没有指明任何属性列名,则新插入的元组必须在每个属性列上均有值。

        2. 插入子查询结果

              子查询不仅可以嵌套在 select 语句中用以构造父查询的条件,也可以嵌套在 insert 语句中用以生成要插入的批量数据。

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

  • 修改数据

              修改操作又称更新操作

                 update <表名> set<列名>=<表达式> [,<列名>=<表达式>]……  [ where <条件>];

                  功能:修改制定表中满足 where 子句条件的元组,其中 set 子句给出 <表达式> 的值用于取代相应的属性列值如果省略 where 子句,则表示要修改表中的所有元组。

  1. 修改某一个元组的值
  2. 修改多个元组的值
  3. 带子查询的修改语句——子查询可以嵌套在 update 语句中,用以构造修改条件。

                

  • 删除数据

           delete from <表名> [where <条件>];

              功能:从指定表中删除满足 where 子句条件的所有元组,如果省略 where 子句则表示删除表中全部元组,但表的定义仍在字典中,—— delete 语句删除的是表中的数据,而不是关于表的定义

  1. 删除某一个元组的值。
  2. 删除多个元组的值。
  3. 带子查询的删除语句——子查询嵌套在 delete 语句中,用以构造执行删除操作的条件。

对某个基本表中数据的增删改查操作可能会破坏参照完整性。

原文地址:https://www.cnblogs.com/lxx2/p/12576695.html