วิธีแก้ปัญหา import คำสั่ง SQL ในการสร้างตาราง #1067 - Invalid default value for 'use_date'
โพสต์แล้ว: 25/09/2019 2:50 pm
อย่างแรกเลยเรามาทำความเข้าใจกับ SQL
ย่อมาจาก structured query language คือภาษาที่ใช้ใน การเขียนโปรแกรม เพื่อจัดการกับฐานข้อมูลโดยเฉพาะ เป็นภาษามาตราฐานบนระบบฐานข้อมูลเชิงสัมพันธ์และเป็นระบบเปิด (open system) หมายถึง เราสามารถใช้ คำสั่ง sql กับ ฐานข้อมูลชนิดใดก็ได้ และ คำสั่งงานเดียวกันเมื่อสั่งงานผ่านระบบฐานข้อมูลที่แตกต่างกันจะได้ผลลัพธ์เหมือนกัน ทำให้เราสามารถเลือกใช้ฐานข้อมูลชนิดใดก็ได้โดยไม่ติดยึดกับฐานข้อมูลใดฐานข้อมูลหนึ่ง
อย่างแรกเลย ให้ทำการแก้โค๊ด sql ก่อนเลย
โดยแก้ที่บรรทัด Errror `use_date` ให้เราเซ็ตค่าเป็น Not Null แล้วกด Sava ไฟล์ให้เรียบร้อย
แนะนำอย่าเซ็ตเป็น CURRENT_TIMESTAMP เพราะจะอาจขึ้นเตือน Error ได้อีก
โค๊ดไฟล์ sql
จากนั้น ทำการ Import ไฟล์ โดยกดปุ่ม เลือกไฟล์ แล้วกด Go
เท่านี้ไฟล์ sql เราก็สามารถ import ไฟล์เข้าฐานข้อมูลได้แล้วครับผม
ก็จะได้ตารางข้อมูล ตามนี้เลยครับ
สำหรับข้อแนะนำ
ถ้าเพื่อนๆ อยาก import ไฟล์ sql ให้ Set ค่า date เป็น None หรือ Null ได้เลย จะได้ไม่มีปัญหาขึ้น Error นะครับ
ย่อมาจาก structured query language คือภาษาที่ใช้ใน การเขียนโปรแกรม เพื่อจัดการกับฐานข้อมูลโดยเฉพาะ เป็นภาษามาตราฐานบนระบบฐานข้อมูลเชิงสัมพันธ์และเป็นระบบเปิด (open system) หมายถึง เราสามารถใช้ คำสั่ง sql กับ ฐานข้อมูลชนิดใดก็ได้ และ คำสั่งงานเดียวกันเมื่อสั่งงานผ่านระบบฐานข้อมูลที่แตกต่างกันจะได้ผลลัพธ์เหมือนกัน ทำให้เราสามารถเลือกใช้ฐานข้อมูลชนิดใดก็ได้โดยไม่ติดยึดกับฐานข้อมูลใดฐานข้อมูลหนึ่ง
อย่างแรกเลย ให้ทำการแก้โค๊ด sql ก่อนเลย
โดยแก้ที่บรรทัด Errror `use_date` ให้เราเซ็ตค่าเป็น Not Null แล้วกด Sava ไฟล์ให้เรียบร้อย
โค้ด: เลือกทั้งหมด
`use_date` datetime NOT NULL,
โค๊ดไฟล์ sql
โค้ด: เลือกทั้งหมด
CREATE TABLE `tools_exchange_rate` (
`id` int(11) NOT NULL,
`name` varchar(200) NOT NULL,
`num1` int(11) NOT NULL,
`from_currency` text NOT NULL,
`to_currency` text NOT NULL,
`num2` float NOT NULL,
`use_date` datetime NOT NULL,
`ip` varchar(20) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `tools_exchange_rate`
ADD PRIMARY KEY (`id`);
ALTER TABLE `tools_exchange_rate`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
COMMIT;
ถ้าเพื่อนๆ อยาก import ไฟล์ sql ให้ Set ค่า date เป็น None หรือ Null ได้เลย จะได้ไม่มีปัญหาขึ้น Error นะครับ