Agreed.  And don't forget to listen to the warnings MySQL sends back,
e.g.:

mysql> create table temp_date(d date default null);
Query OK, 0 rows affected (0.15 sec)

mysql> insert into temp_date(d) values('2009-13-99');
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> show warnings;
+---------+------+----------------------------------------+
| Level   | Code | Message                                |
+---------+------+----------------------------------------+
| Warning | 1265 | Data truncated for column 'd' at row 1 | 
+---------+------+----------------------------------------+
1 row in set (0.00 sec)

mysql> select * from temp_date;
+------------+
| d          |
+------------+
| 0000-00-00 | 
+------------+
1 row in set (0.01 sec)

Andrew

-----Original Message-----
From: Martijn Tonies [mailto:m.ton...@upscene.com] 
Sent: 15 May 2009 14:43
To: mysql@lists.mysql.com
Subject: Re: Inserting a default null date 

Hi,

> I have a table with a column like:
>
> date date default null,
>
> If I enter an empty string in it, the default null value is added (as
it 
> should).
>
> But if I enter an invalid date by mistake, the date 0000-00-00 date
date 
> is entered instead of the default null, and this is not good.
>
> Can I do something to force MySQL to insert a null date if the entered

> date is an invalid one?

That's silly, if the data you want to insert is considered to be
invalid, 
reject it,
don't replace it with NULL.

With regards,

Martijn Tonies
Upscene Productions
http://www.upscene.com

Download FREE! Database Workbench Lite for MySQL!


Database questions? Check the forum:
http://www.databasedevelopmentforum.com 


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:
http://lists.mysql.com/mysql?unsub=andrew.braithwa...@lovefilm.com


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/mysql?unsub=arch...@jab.org

Reply via email to