天天看點

MYSQL語句中易忽略的文法錯誤

$str="CREATE TABLE test (

         id int( 11 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,

         name VARCHAR( 255 ) NOT NULL ,

         ip VARCHAR( 255 ) NOT NULL ,

         ly TEXT NOT NULL ,

         addtime DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',

         ) TYPE = innodb;";

版本:MYSQL 5.0

----------------------------------------------

上面的SQL語句,讓我用了3個小時,才找到它錯誤的地方.所謂有一失,必有一得.

正因為如此,才讓我對sql語句的文法有了更深刻的認識.

總結如下:

1.在MYSQL中大小寫不區分.

2.結尾處的分号,有沒有都可以.

TYPE = innodb;";  與   TYPE = innodb";都是正确的.

3.定義最後一個安段處,不需要",".(也就是這個問題讓我頭疼了3個小時)

錯誤:addtime DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',

正确:addtime DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00'