23c 新特性之构建多行记录

来源:这里教程网 时间:2026-03-03 19:15:21 作者:

  描述                                            

构建多行记录的介绍

Oracle Database 23c 开始, Oracle 数据库支持构建多行记录的操作,相较于之前的数据库版本经常遇到 insert 时不能跟多行的情况,如果是一个比较复杂的表达式,在单行 insert 输入,不太方便。因此在 23c WITH 时可以不通过构建查询的方式,直接用 VALUES 语句创建数组,这使查询更加简化。由于 VALUES 语句可使用,那么除 WITH 构建外,在 INSERT 语句中,也可以实现多行的直接插入。

  构建多行记录测试

创建测试数据

SQL> create table employees(department_id int, salary number(10));

SQL> insert into employees values (1,1000);

SQL> insert into employees values (2,2000);

SQL> insert into employees values (3,3000);

SQL> insert into employees values (4,4000);

 

 

环境测试

SQL> select banner from v$version;

 

BANNER

--------------------------------------------------------------------------------

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

 

 

SQL> insert into employees values (5,5000),(6,6000),(7,7000),(8,8000);

insert into employees values (5,5000),(6,6000),(7,7000),(8,8000)

                                     *

ERROR at line 1:

ORA-00933: SQL command not properly ended

 

这里报错了, ORA-00933: SQL command not properly ended

 

 

环境测试

SQL> select BANNER from  v$version;

 

BANNER

--------------------------------------------------------------------------------

Oracle Database 23c Free, Release 23.0.0.0.0 - Developer-Release

 

SQL> insert into employees values (5,5000),(6,6000),(7,7000),(8,8000);

 

4 rows created.

SQL> commit;

 

Commit complete.

相关推荐