任何人都可以在这个区块中显示或告诉我什么是错的?我看不到它。
#--------------------------------------------------------
#
# Table structure for table 'user'
#
DROP TABLE IF EXISTS __TABLE_PREFIX__user;
CREATE TABLE __TABLE_PREFIX__user (
username varchar(32) DEFAULT '' NOT NULL,
level int(11) DEFAULT '0' NOT NULL,
password varchar(41) DEFAULT '' NOT NULL,
first_name varchar(64) DEFAULT '' NOT NULL,
last_name varchar(64) DEFAULT '' NOT NULL,
email_address varchar(63) DEFAULT '' NOT NULL,
time_stamp timestamp(14),
status enum('INACTIVE','ACTIVE') DEFAULT 'ACTIVE' NOT NULL,
uid int(11) NOT NULL auto_increment,
session varchar(32),
PRIMARY KEY (username),
KEY uid (uid)
);
数据库说:
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 '(14), status enum('INACTIVE','ACTIVE') DEFAULT 'ACTIVE' NOT NULL, uid int(11' at line 8
答案 0 :(得分:2)
表示长度的TIMESTAMP(n)
语法已弃用,在MySQL 5.5中不再受支持。而是使用:
time_stamp timestamp,
来自MySQL TIMESTAMP
documentation
在旧版本的MySQL(4.1之前版本)中,TIMESTAMP数据类型的属性在很大程度上与本节中描述的方式有很大不同(有关详细信息,请参阅MySQL 3.23,4.0,4.1参考手册);这些包括在MySQL 5.1中不推荐使用的语法扩展,在MySQL 5.5中不再受支持。这对在MySQL Server版本之间执行转储和恢复或复制有影响。如果您使用的是使用旧TIMESTAMP(N)语法定义的列,请在升级到MySQL 5.1或更高版本之前参见第2.19.1.2节“从MySQL 4.1升级到5.0”。