2017-09-24 31 views
-2

我收到以下錯誤,在執行某些SQL代碼:爲什麼我會收到以下錯誤?

消息102,15級,狀態1,服務器WIN-ILO9GLLB9J0,9號線
附近有語法錯誤 '名'。

Msg 102,Level 15,State 1,Server WIN-ILO9GLLB9J0,Line 10
'name'附近的語法不正確。

Msg 102,Level 15,State 1,Server WIN-ILO9GLLB9J0,Line 11
'name'附近的語法不正確。

Msg 102,Level 15,State 1,Server WIN-ILO9GLLB9J0,Line 12
'name'附近的語法不正確。

我的代碼是這樣的:

CREATE TABLE city 
(
    id number(5), 
    name varchar2(17), 
    countrycode varchar2(3), 
    district varchar2(20), 
    population number(20) 
); 

INSERT INTO city (id, 'name', 'countrycode', 'district', population) 
VALUES (3878, 'Scottsdale', 'USA', 'Arizona', 202705); 

INSERT INTO city (id, 'name', 'countrycode', 'district', population)  
VALUES (3965, 'Corona', 'USA', 'California', 124966); 

INSERT INTO city (id, 'name', 'countrycode', 'district', population) 
VALUES (3973, 'Concord', 'USA', 'California', 121780); 

INSERT INTO city (id, 'name', 'countrycode', 'district', population) 
VALUES (3977, 'Cedar', 'Rapids', 'USA', 'Iowa', 120758); 

INSERT INTO city (id, 'name', 'countrycode', 'district', population) 
VALUES (3982, 'Coral Springs', 'USA', 'Florida', 117549); 

SELECT * 
FROM city 
WHERE (population > 100000); 
+0

此外:SQL Server沒有'Varchar2()'數據類型 - 這是Oracle。在SQL Server中,它只是'VARCHAR(n)'..... –

+1

或者'數字'數據類型。 –

回答

3

以只插入語句作爲例子之一,應改爲:

INSERT INTO city 
    (id, name, countrycode, district ,population) 
values 
    (3878,'Scottsdale', 'USA', 'Arizona', 202705); 

'被繞柱去除名稱,否則將被解釋爲字符串而不是列的名稱。

0

使用SQL-Server時,創建並插入表時可以使用以下內容。

CREATE TABLE city 
(
    id INT, 
    name VARCHAR(17), 
    countrycode VARCHAR(3), 
    district VARCHAR(20), 
    population INT 
); 

INSERT INTO city (id, name, countrycode, district, population) VALUES 
(3878, 'Scottsdale', 'USA', 'Arizona', 202705), 
(3965, 'Corona', 'USA', 'California', 124966), 
(3973, 'Concord', 'USA', 'California', 121780), 
(3977, 'Cedar', 'Rapids', 'USA', 'Iowa', 120758), 
(3982, 'Coral Springs', 'USA', 'Florida', 117549); 

SELECT * 
    FROM city 
WHERE population > 100000; 
相關問題