更新时间:2024-04-29 GMT+08:00

INSERT INTO

本章节介绍如何插入数据。

基本语法

  • 标准格式插入数据。
    INSERT INTO [db.]table [(c1, c2, c3)] VALUES (v11, v12, v13), (v21, v22, v23), ...

    对于存在于表结构中但不存在于插入列表中的列,它们将会按照如下方式填充数据:

    • 如果存在DEFAULT表达式,根据DEFAULT表达式计算被填充的值。
    • 如果没有定义DEFAULT表达式,则填充零或空字符串。

    复制表结构创建表示例,插入数据:

    insert into demo_t values(1,'Candy','23','M'),(2,'cici','33','F');
  • 使用SELECT的结果写入。
    INSERT INTO [db.]table [(c1, c2, c3)] SELECT ...

    写入的列与SELECT的列的对应关系是使用位置来进行对应的,它们在SELECT表达式与INSERT中的名称可以是不同的。需要对它们进行对应的类型转换。

    除了VALUES格式之外,其他格式中的数据都不允许出现诸如now(),1+2等表达式。VALUES格式允许您有限度的使用这些表达式,但是不建议您这么做,因为执行这些表达式很低效。