2017-08-08 61 views
1

我得到这个错误(1264超出范围值列'估计'在第1行)有谁知道这意味着什么,因为我不知道。在mysql中获取错误1264

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'); 
+1

删除''''''1''并重试 –

+0

是的工作谢谢:D –

回答

3

BIT数据类型只接受01b'0'b'1'0b00b1。字符串'1'不是有效的BIT值。请注意0​​不是有效的DATETIME值。您应该使用'2016-11-01''2016-11-01 00:00:00'

+0

感谢您的回复 –

0

请增加列“估计”的类型,长度或更改为字符串类型

+0

类型的镜头==类型的长度? – Barmar

+0

是的。感谢您的回复。 – SharpLu