oracle 多表插入

Oracle中多表插入是一个比较常见的需求。它的意思是对多个表进行插入操作,可以一次性地进行多个插入动作。这样一来,可以减少很多重复性代码的编写,提高代码的复用性。

例如,假设我们现在需要往两个表中插入数据。第一个表是员工表,第二个表是部门表。

CREATE TABLE employee( id NUMBER(6) NOT NULL, name VARCHAR2(20) NOT NULL, SEX VARCHAR2(20) NOT NULL, age NUMBER(6) NOT NULL, salary NUMBER(10, 2) NOT NULL, hiredate DATE NOT NULL, PRIMARY KEY(id) ); CREATE TABLE department( id NUMBER(6) NOT NULL, deptname VARCHAR2(20) NOT NULL, location VARCHAR2(20) NOT NULL, PRIMARY KEY(id) ); INSERT INTO employee(id, name, sex, age, salary, hiredate) VALUES(1, '张三', '男', 35, 8000, TO_DATE('2018-12-01', 'yyyy-mm-dd')); INSERT INTO employee(id, name, sex, age, salary, hiredate) VALUES(2, '李四', '女', 28, 5000, TO_DATE('2019-01-01', 'yyyy-mm-dd')); INSERT INTO department(id, deptname, location) VALUES(1, '研发部', '北京'); INSERT INTO department(id, deptname, location) VALUES(2, '销售部', '上海');