在Oracle中INSERT语句用于在数据表中增加数据,例如插入一行记录或多条记录。
1.INSERT语句的基本语法是:
INSERT INTO 表名(列名1,列名2,…) values(数据1,数据2,…)
需要注意的是:
(1)使用这种语法,一次只能向表中插入一条记录。
(2) 如果在语法中省略列名表,则要求values子句中数据的个数、类型与表中的列保持一致。
(3)插入数据时,字符型、日期数据要用单引号括起来。
2.使用子查询的INSERT语句
使用子查询语句从其他表中提取数据插入到指定的表中更为方便,因为这种方法可以一次插入多个记录,其语法如下:
INSERT INTO 表名(<列名1>,<列名2>,…)
SELECT
<列名1>,<列名2>,…
FROM
<表名>;
3 合并更新语句MERGE
MERGE语句用于将一个表的数据合并到另一个表中。该语句是把UPDATE和INSERT语句合并起来使用,根据一张表或子查询的连接条件对另外一张表进行查询,连接条件匹配上的进行UPDATE,无法与条件匹配的执行INSERT语句。该语法仅需要一次全表扫描就完成了全部工作,执行效率要高于INSERT+UPDATE。MERGE语句的语法如下:
MERGE INTO 目标表名[别名] USING {原表名|视图|子查询}[别名]
ON 连接条件
WHEN MATCHED THEN UPDATE SET 列名1=表达式,列名2=表达式,…
WHEN NOT MATCHED THEN INSERT 列名1,列名2,… VALUES (表达式1,表达式2,…;
具体例程略,根据公式写出不难。