25 November 2013

插入数据

不指定具体字段名

INSERT INTO 表名 VALUES
    (值1,值2,...,值n),
    (值1,值2,...,值n),
    ...
    (值1,值2,...,值n);
  1. 表名:数据要插入的表的名字。
  2. 值n:分别对应每个表中每个字段。
  3. 可以同时插入多个数据记录。
  4. 数据插入的顺序要与表中字段定义的顺序相同,且类型一致。

指定具体字段名

INSERT INTO 表名(属性1,属性2,...,属性n) VALUES
    (值1,值2,...,值n),
    (值1,值2,...,值n),
    ...
    (值1,值2,...,值n);
  1. 属性n为字段名称,值n为字段的值。二者一一对应
  2. 可以指定表中部分字段
  3. 字段的顺序可以不与表中定义的顺序相同
  4. 对于没有赋值的字段,系统自动赋默认值,该默认值是在创建表时定义的。如果定义表时将某字段约束为NOT NULL,且无默认值,就必须赋值,否则系统报错。
  5. 对于自增字段,要么不赋值要么赋值为NULL,系统都将在自动在上一条记录的基础上加1。

将查询结果插入表中

INSERT INTO 表名1(属性列表1)
    SELECT FROM  表名2(属性列表2)
        WHERE 条件表达式;

必须保证属性列表1、2,个数类型完全相同,否则报错。


更新数据

更新数据是指:更新表中已经存在的记录

UPDATE 表名
    SET
        属性1 = 取值1,
        属性2 = 取值2,
        ...
        属性n = 取值n,
    WHERE 条件表达式;

条件表达式:被更新记录满足的条件。需要注意可能会有多条记录满足条件,如果有记录不用更新则要重写条件表达式。在更新前最好用select语句来判断一下是否确实需要更新。


删除数据

DELETE FROM 表名
    [WHERE 条件表达式];
  1. where条件表达式是可选的,如果没有则删除表中所有记录,要特别小心。
  2. 最好先select确认要删除的记录。


blog comments powered by Disqus