2013-04-10 77 views
-1

我有一個名爲「calendar」的表,它是在PHP程序中使用此SQL語句創建的。INSERT日期爲MySQL錯誤1064

$sql="CREATE TABLE calendar (
mdate DATE, 
PRIMARY KEY(mdate), 
special CHAR(20), 
director CHAR(20), 
dealer CHAR(20), 
meeting CHAR(20))"; 

當我試圖插入數據到這個表中時,我收到了MySQL的錯誤1064。爲了確定錯誤的位置,我複製了我的PHP程序中的INSERT語句,並使用常量而不是變量。這是INSERT語句:

INSERT INTO TABLE calendar (mdate, special, director, dealer, meeting) VALUES('2013-05-01','Special Game','Director','Dealer','Meeting'); 

這是我收到的錯誤消息:

#1064 - 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 'TABLE calendar (mdate, special, director, dealer, meeting) VALUES('2013-05-01','' at line 1 

我認爲錯誤涉及「mdate」一欄。我嘗試了幾種格式的日期,但沒有更改錯誤消息。我回顧了MySQL手冊9.1.3。日期和時間文字,看來YYYY-MM-DD是DATE列的有效格式。我也檢查了9.3。保留字以確保我的列名都不是保留字。

我原本計劃使用LOAD DATA INLINE來更新我的表,但事實證明聲明需要FILE權限,而我的網站的主機不願授予該權限。

這看起來太簡單了,不能成爲問題。我希望有人能看到我沒有看到的東西。

回答

2

您不得在INSERT句子中使用關鍵字TABLE。它應該是這樣的:

INSERT INTO calendar (mdate, special, director, dealer, meeting) 
VALUES('2013-05-01','Special Game','Director','Dealer','Meeting'); 
+0

我知道這是很容易的表。謝謝您的幫助。 – user2268075 2013-04-10 22:21:37

1

日曆已經是你不需要說TABLE

INSERT INTO calendar (mdate, special, director, dealer, meeting) 
    VALUES('2013-05-01','Special Game','Director','Dealer','Meeting');