运行CREATE TABLE脚本时出现错误1064

时间:2015-02-18 11:18:08

标签: mysql sql

我正在尝试运行SQL脚本将表添加到我的数据库并继续收到错误1064.以下是代码:

CREATE TABLE 'Bookings' (
'Booking_id' INTEGER(10) NOT NULL AUTO_INCREMENT,
'Arrival_Date' date(8) CURRENT_TIMESTAMP NOT NULL,
'Departure_Date' date(8) CURRENT_TIMESTAMP NOT NULL,
'Registrants_ID' INTEGER(10) DEFAULT NOT NULL,
'Accomodation_ID' INTEGER(10) DEFAULT NOT NULL,
PRIMARY KEY ('Booking_ID'),
KEY 'Accomodation_ID' ('Accomodation_ID'),
KEY 'Registrants_ID' ('Registrants_ID'),
CONSTRAINT 'bookings_ibfk_1' FOREIGN KEY ('Accomodation_ID') REFERENCES 'Accommodation' ('Accomodation_ID')
CONSTRAINT 'bookings_ibfk_2' FOREIGN KEY ('Registrants_ID') REFERENCES 'Registrants' ('Registrants_ID')
);

3 个答案:

答案 0 :(得分:1)

尝试删除'到列名。

答案 1 :(得分:0)

您应该将日期时间用于Arrival_Date等,

current_timestamp给出:2015-02-18 15:34:24

current_date:2015-02-18

答案 2 :(得分:0)

如果指定DEFAULT,则需要提供默认值。

E.g。

'Registrants_ID' INTEGER(10) DEFAULT 1 NOT NULL,
'Accomodation_ID' INTEGER(10) DEFAULT 1 NOT NULL,

此外,你应该在字段/表/索引名称周围使用反引号(`)而不是单引号(')。

此外,您无法将日期字段默认为CURRENT_TIMESTAMP。如果您希望时间戳字段默认为CURRENT_TIMESTAMP,则需要DEFAULT关键字。例如:DEFAULT CURRENT_TIMESTAMP