在mysql中获取错误1264

时间:2017-08-08 16:14:00

标签: mysql

我收到此错误(1264超出第1行“估计”列的范围值)是否有人知道这意味着什么,因为我不确定。

CREATE TABLE reading(
    meter_code CHAR(5) NOT NULL,
    `when` DATETIME NOT NULL,
    display DECIMAL(9,3) NOT NULL,
    estimate BIT NOT NULL DEFAULT 0,
    CONSTRAINT pri_reading 
PRIMARY KEY (`when`, meter_code),
    CONSTRAINT reading_FK
FOREIGN KEY (meter_code)
    REFERENCES meter (`code`) 
    ON UPDATE CASCADE 
    ON DELETE CASCADE );

这就是我想插入的内容。

INSERT INTO reading VALUES ('G1','2016.11.01','200','1');

2 个答案:

答案 0 :(得分:3)

BIT数据类型仅接受01b'0'b'1'0b00b1。字符串'1'不是有效的BIT值。

另请注意,'2016.11.01'不是有效的DATETIME值。您应该使用'2016-11-01''2016-11-01 00:00:00'

答案 1 :(得分:0)

请增加列的类型长度"估算"或更改为字符串类型