Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

สร้างคอลัมน์ DATETIME ให้ค่าเริ่มต้นเป็น 0000-00-00 ใน MySQL

ใช้ DEFAULT กำหนดค่าเริ่มต้นสำหรับ DATETIME

สร้างตารางพร้อมค่าเริ่มต้น

mysql> create table DemoTable ( 
    -> EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    -> EmployeeName varchar(20), 
    -> EmployeeJoiningDate datetime default '0000-00-00 00:00:00' 
    -> ) ENGINE=MyISAM, AUTO_INCREMENT=100; 
Query OK, 0 rows affected (0.21 sec)

เพิ่มข้อมูลโดยไม่ระบุวันที่

mysql> insert into DemoTable(EmployeeName) values('Chris'); 
Query OK, 1 row affected (0.13 sec) 
mysql> insert into DemoTable(EmployeeName) values('David'); 
Query OK, 1 row affected (0.04 sec) 
mysql> insert into DemoTable(EmployeeName) values('Mike'); 
Query OK, 1 row affected (0.03 sec) 
mysql> insert into DemoTable(EmployeeName) values('Sam'); 
Query OK, 1 row affected (0.06 sec)

ผลลัพธ์

+------------+--------------+---------------------+ 
| EmployeeId | EmployeeName | EmployeeJoiningDate | 
+------------+--------------+---------------------+ 
|        100 | Chris        | 0000-00-00 00:00:00 | 
|        101 | David        | 0000-00-00 00:00:00 | 
|        102 | Mike         | 0000-00-00 00:00:00 | 
|        103 | Sam          | 0000-00-00 00:00:00 | 
+------------+--------------+---------------------+ 
4 rows in set (0.00 sec)

หมายเหตุ: ค่า '0000-00-00 00:00:00' เป็นค่า "zero date" ใน MySQL | ต้องตั้ง SQL_MODE ไม่รวม NO_ZERO_DATE หากต้องการอนุญาต | แนะนำให้ใช้ NULL แทนสำหรับข้อมูลที่ไม่มีวันที่จริง