2011-10-04 40 views
0

我正在使用MySQL數據庫,並遇到兩個問題。第一個嘗試使用SET系統向現有表添加一行。下面的代碼,我收到錯誤消息:兩個快速問題 - 無法插入表格並且無法生成Select語句工作

mysql> INSERT INTO Instructors 
-> SET FacId = 96 
-> SET FirstName = 'Chris' 
-> SET LastName = 'Explorer' 
-> SET HomePhone = '555-1492'; 

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual 
that corresponds to your MySQL server version for the right syntax to use 
near 'SET FirstName = 'Chris' SET LastName = 'Explorer' SET 
HomePhone = '555-1492'' at line 3 

第二個問題是對於不遵循###的預設模式中的所有電話號碼一個一個搜索 - 11 ##。在這裏,再一次,是代碼和我收到的錯誤:

mysql> SELECT FacId, FirstName, LastName, WorkPhone 
-> FROM Instructors 
-> WHERE WorkPhone != '555-11__'; 
+-------+-----------+------------+-----------+ 
| FacId | FirstName | LastName | WorkPhone | 
+-------+-----------+------------+-----------+ 
|  5 | Carlson | Detroit | 555-1196 | 
| 12 | Victoria | Windsor | 555-5874 | 
| 20 | George | Herman  | 555-1147 | 
| 31 | Justin | Morgan  | 555-5874 | 
| 33 | Thomas | OHara  | 555-3698 | 
| 34 | Thett | Poker  | 555-4865 | 
| 35 | David  | Goliath | 555-1178 | 
| 37 | Dennis | Locker  | 555-1169 | 
| 43 | Sean  | Pent  | 555-4874 | 
| 44 | Elizabeth | Tallman | 555-5588 | 
| 48 | Jane  | Fonder  | 555-1122 | 
| 49 | Joe  | Footballer | 555-6611 | 
| 83 | Allan  | German  | 555-5533 | 
| 84 | Gregg  | Packer  | 555-5874 | 
+-------+-----------+------------+-----------+ 
14 rows in set (0.00 sec) 

我很茫然,我做錯了這些。有任何想法嗎?

+0

這應該是兩個問題。 – Flimzy

回答

1

UPDATE命令使用SET命令,而不是INSERT命令。試試這個:

INSERT INTO Instructors (FacId, FirstName, LastName, HomePhone) 
    VALUES (96,'Chris','Explorer','555-1492'); 

而對於第二個問題(這實際上應該是第二個問題):

SELECT FacId, FirstName, LastName, WorkPhone 
    FROM Instructors 
    WHERE WorkPhone NOT LIKE '555-11__'; 
+0

感謝您的第二個答案。那正是我做錯事的原因,我覺得自己沒有意識到這一點是白癡。 * g *另外,抱歉將它們張貼在一起。我將來不會這樣做。 – George

+0

不幸的是,我們的教師非常明確地表示我們要使用SET而不是更新文件的正常方式。 :-( – George

+0

@George:然後使用UPDATE,而不是INSERT – Flimzy

0
  1. 你需要查找的INSERT語法,它是這樣的:

    INSERT INTO TableName (ColumnName1, ColumnName2. ..) 
        VALUES (Value1, Value2. . .) 
    
  2. 你想NOT LIKE運算符,而不是!=運算符。

+0

不幸的是,我們的老師已經明確表示我們必須使用Set命令來進行這個特定的更新 – George

+0

如果你正在嘗試* update *(not * add * )數據,你要查找**'UPDATE' **的語法,'INSERT'命令不使用關鍵字'SET'。 –