น้องที่ทำงานเจอ error #1264 Out of range value adjusted for column 'ID' at row 1
ID เป็น auto increment เมื่อไม่ได้กำหนดค่าอะไร มันก็ควรจะเพิ่มค่าล่าสุดไปอีกหนึ่ง เช่น
INSERT INTO member(name) VALUES("Patrickz")
แต่กลายเป็นว่า มันขึ้น eror ดังกล่าวออกมา เมื่อลองทดสอบลองใส่ค่าให้ครบถ้วนกลับทำงานได้ตามปกติ
INSERT INTO member(ID,name) VALUES("10,Patrickz")
INSERT INTO member(ID,name) VALUES(10,"Patrickz")
วิธีแก้ (UPDATE 2006.05.30)
แก้ที่ my.ini ตรง sql-mode เอา STRICT_TRANS_TABLES ออก!
จาก
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
เปลี่ยนเป็น
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
ยังไม่มีเวลาดูเท่าไหร่ แต่คิดว่า ทั้งหมดนี้ เป็นเรื่องของการรับประกันความถูกต้องของข้อมูลใน MySQL
note ไว้ก่อน มีเวลาค่อยกลับมาดู หัวจะฟูแล้ว
ใครว่างๆ ช่วยดูให้หน่อยสิ
Guaranteeing Data Integrity with MySQL 5.0
5.2.5. The Server SQL Mode
11.1.4. Data Type Default Values
INSERT INTO member(ID,name) VALUES("10,Patrickz")
แน่ใจน่ะพี่ว่าคำสั่งนี้ทำง่านได้
น่าจะ
INSERT INTO member(ID,name) VALUES('10','Patrickz')
น่ะคับ
แว๊บบบบบ
จริงด้วย พิมพ์ผิด
แต่ INSERT INTO member(ID,name) VALUES('10','Patrickz') ก็ยังไม่ใช่ ต้องเป็น
INSERT INTO member(ID,name) VALUES(
10,'Patrickz')
sdsdfsf