今天在实践过程中遇到一个问题,
我想往数据库插入多条数据时,使用了如下语句:
1
|
insert into 表1 (字段1,字段2) values (1,2),(2,3),(3,4); |
这条语句在mysql中执行的话,语法一点毛病都没有,但是,在oracle上执行一直报错:
ORA-00933: SQL 命令未正确结束
后来有了如下的解决办法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
/* --一、建表 create or replace table pm_ci ( ci_id varchar2(20) not null , stu_ids varchar2(100) ); create table pm_stu( stu_id varchar2(20) not null , stu_name varchar2(100) ); --插入数据 insert into pm_ci values ( '1' , '1,2,3,4' ); insert into pm_ci values ( '2' , '1,4' ); insert into pm_stu (stu_id,stu_name) values ( '1' , '张三' ); oracle 插入多个值的方法: --亲自实验了 oracle 不支持使用 insert into 表1 (字段1,字段2) values (1,2),(2,3),(3,4);这条语句插入多条数据库,但是mysql支持, 那么在oracle上如何一条语句插入多个值呢? 本人测试语句如下: insert all into pm_stu (stu_id, stu_name) values ( '3' , '王五' ) into pm_stu values ( '4' , '赵六' ) select 1 from dual; 这样写的好处,目前总结如下,避免了写复杂而又没必要写的存储过程,避免了执行多个SQL语句多次连接数据库的开销 至于其他好处,大家要是有不同的见解欢迎留言讨论。 */ |
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。
原文链接:https://www.cnblogs.com/qinjiting/p/11279469.html