Board logo

标题: 坛子里有没有玩MySQL的? [打印本页]

作者: Snowpine    时间: 2007-8-25 11:00     标题: 坛子里有没有玩MySQL的?

用MySQL碰到一个问题!
在MySQL5.0.33版本下,建表,

CREATE TABLE tabNotices(
id bigint NOT NULL AUTO_INCREMENT ,
state int NOT NULL ,
release datetime NOT NULL ,
subject varchar( 50 ) NOT NULL ,
content text NOT NULL ,
PRIMARY KEY ( id )

) TYPE = MYISAM ;

一运行到release datetime NOT NULL ,这里就报错,
#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 'release datetime NOT NULL ,
    subject varchar (50) NOT NULL ,
    content text NOT' at line 4


把这一句屏蔽掉就可以顺利运行。
那位兄弟知道怎么回事?
作者: Mallon    时间: 2007-8-25 11:00

呵呵试过了,是release的问题
作者: Mallon    时间: 2007-8-25 16:38

是不是5.0版本不支持该语法?
作者: Mallon    时间: 2007-8-25 16:42

release 有可能是mysql的保留字,换个其它名字看看
作者: Snowpine    时间: 2007-8-25 16:46

release应该是没有问题的,我发现另外一个表里面也有这个字段,数据类型也是datetime,可能跟这个有关系
但是不知道为什么其他类型就可以,单单datetime有问题?
作者: Snowpine    时间: 2007-8-25 16:59

原帖由 Mallon 于 2007-8-25 16:54 发表
呵呵试过了,是release的问题

不会吧,我把前面那个表也贴出来!
作者: Snowpine    时间: 2007-8-25 16:59

CREATE TABLE tabNews (
id bigint NOT NULL auto_increment ,
state int NOT NULL ,
`release` datetime NOT NULL ,
`subject` varchar (40) NOT NULL ,
`digest` varchar (200) NOT NULL ,
content text NOT NULL ,
    PRIMARY KEY (id)
) TYPE=MyISAM;
作者: Snowpine    时间: 2007-8-25 17:04

加了这个“`”就可以,这个“`”和“'”还不相同,是不是那个是linux平台下的单引号?
作者: Snowpine    时间: 2007-8-25 17:06

我查了一下,一个ACSII是0x27,另外一个是0x60!有差别!
0x27的是数字键最左边那个键,以前没注意这个键,不知道为什么要用这个引用起来?!
作者: Mallon    时间: 2007-8-25 17:14

那几个引起来的肯定也是关键字,呵呵




欢迎光临 幽游生活 (http://www.yylive.net/) Powered by Discuz! 7.2