2015-02-12 102 views
0
CREATE TABLE myCTGlobalFootprint (
     geoID INT NOT NULL AUTO_INCREMENT, 
     geoName VARCHAR(20) NOT NULL, 
     PRIMARY KEY (geoID) 
    ); 


INSERT INTO myCTGlobalFootprint 
    (geoName) 

VALUES 
    ('Canada'), 
    ('United States'), 
    ('Europe'), 
    ('International Misc.'); 

它在第15行拋出一個錯誤......任何見解都會被深深地讚賞!MySQL錯誤 - 我在這裏做錯了什麼?

+1

什麼錯誤? – 2015-02-12 05:41:40

+0

我試過你的代碼,發現根本沒有錯誤。看到這裏:http://sqlfiddle.com/#!2/bb74ab/1/0 – Rigel1121 2015-02-12 05:43:46

+0

非常感謝你的時間! http://www.piliapp.com/mysql-syntax-check/ 我正在利用此驗證程序來檢查我的腳本(我處於無法訪問我的閃亮編輯器atm的位置),它給出了一個模糊的警告,我需要檢查查詢從表聲明的末尾到插入語句的更改。然而,他們獨立驗證。 – theroguemuppet 2015-02-12 05:45:12

回答

0

使用UNION喜歡:

INSERT INTO myCTGlobalFootprint (geoName) 
select 'Canada' 
UNION 
select 'United States' 
UNION 
select 'Europe' 
UNION 
select 'International Misc.'; 

否則你必須寫四篇INSERT INTO之類的語句:

INSERT INTO myCTGlobalFootprint(geoName) VALUES('Canada'); 
INSERT INTO myCTGlobalFootprint(geoName) VALUES('United States'); 
INSERT INTO myCTGlobalFootprint(geoName) VALUES('Europe'); 
INSERT INTO myCTGlobalFootprint(geoName) VALUES('International Misc.'); 
+0

這在其他數據庫中會出現,但MySQL提供了一個擴展,它允許單個插入語句爲多行提供值; OP發佈的語法將在MySQL中工作。這不是強制性的,它被重寫爲四個單獨的插入語句。 – spencer7593 2015-02-12 05:46:38

+1

這就對了@ spencer7593,沒有必要將它寫入4個不同的插入查詢中,或者甚至在只能使用逗號時使用UNION。 – Rigel1121 2015-02-12 05:48:03

相關問題