第四章 插入,更新与删除
- 插入新纪录
- 使用带有values子句的insert into语句来插入一行
- 对于DB2和MySQL,可以选择一次插入一行,或者用多个值列表一次插入多行
- 如果语句中没有列出要插入行中的目标字段,则必须要插入表中的所有列
- 插入默认值
- 使用default显式的指定某列插入默认值
- 当不需要将表所有列都插入值时,也可以明确的地指出要使用默认值的名称
- Oracle9i之前不支持显式插入默认值
- MySQL中,如果所有列都定义了默认值,可以用一个空的值列表来解决此问题
- PostgreSQL和SQL server支持default values子句
- 使用null代替默认值
- 在值列表中明确地指定null值
- 从一个表向另外的表中复制行
- 在insert into 语句后面跟随一个查询,通过该查询返回想要得到的行
- 复制定义表(创建新表,该表与已有表的列设置相同)
- DB2:
- 使用带有like子句的create table 表名 like 目标表
- Oracle,MySQL和PostgreSQL:
- 在create table命令中,使用一个不反悔任何行的子查询(比如1=0)
- DB2:
- 一次向多个表中插入记录
- Oracle:
- 使用insert all或insert first语句
- Oracle: