oracle一條語句插入多個值的方法


今天在實踐過程中遇到一個問題,

我想往數據庫插入多條數據時,使用了如下語句:

insert into 表1 (字段1,字段2) values (1,2),(2,3),(3,4);

這條語句在mysql中執行的話,語法一點毛病都沒有,但是,在oracle上執行一直報錯:
ORA-00933: SQL 命令未正確結束 

后來有了如下的解決辦法: 

 

/*

--一、建表
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語句多次連接數據庫的開銷
至於其他好處,大家要是有不同的見解歡迎留言討論。
*/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM