2017-07-15 95 views
0

我想插入多行插入表中沒有指定列名,但是,我的第一個逗號,它的一個部分認可的規則得到一個錯誤,它給我一個錯誤SQL多次插入到多行

INSERT INTO MY_EMPLOYEE 
VALUES(126,'Popov', 'Olga', 'opopov', 8500), 
    (127, 'Chen', 'Ling', 'lcheng', 14500), 
    (128, 'Dunn', 'David', 'ddunn', NULL); 
+0

https://stackoverflow.com/a/26612365/4899193 –

+0

這是你需要做的事情,只有一次你正在寫一個應用程序,將被投入許多人的手中嗎? – jeff6times7

回答

0

我不認爲Oracle支持VALUES與多個記錄。下面是一個簡單的選擇:

INSERT INTO MY_EMPLOYEE 
    SELECT 126,'Popov', 'Olga', 'opopov', 8500 FROM DUAL UNION ALL 
    SELECT 127, 'Chen', 'Ling', 'lcheng', 14500 FROM DUAL UNION ALL 
    SELECT 128, 'Dunn', 'David', 'ddunn', NULL FROM DUAL; 

注:我強烈建議您指定插入的列,但那是另一個問題。

0

試試這個;

INSERT INTO MY_EMPLOYEE(col1_name,col2_name,col3_name,col4_name,col5_name) 
VALUES(126,'Popov', 'Olga', 'opopov', 8500), 
    (127, 'Chen', 'Ling', 'lcheng', 14500), 
    (128, 'Dunn', 'David', 'ddunn', NULL); 
+0

這是MySQL語法,問題是關於不支持以這種方式插入多行的Oracle。 – axiac