MySQL Date型にNULLが設定できない。
csvファイルからMySQLにデータを取り込む際に、Date型やint型にNULLを設定するにはどうしたらよいでしょうか。
以下のようなテーブルに
| tTest | CREATE TABLE `ttest` (
`ID` bigint(20) NOT NULL,
`title` text NOT NULL,
`naiyou` varchar(100) DEFAULT NULL,
`kaishi` date DEFAULT NULL,
`owari` date DEFAULT NULL,
`peirod` bigint(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=sjis |
以下のようなcsvファイルを読み込んだとき(*)、
10,テスト,2008-04-05,2009-04-23,43
11,テスト,2008-04-05,NULL,43
12,テスト,2008-04-05,2009-04-23,NULL
2行目のNULLで
ERROR 1292 (22007): Incorrect date value: 'NULL' for column ....
とエラーが発生します。
3行目のNULLでもint型ですが同様にエラーとなります。
一方、insertで行の追加以下のようにした場合は成功します。
insert into tTest values (12,テスト,'2008-04-05',NULL,NULL)
外部ファイルから読み込んだ場合にNULL値を設定するにはどのようにしたらよいのでしょうか。
(*)以下のコマンド
LOAD DATA INFILE "E:\\work\\MySQL\\sample.csv"
INTO TABLE tTest FIELDS TERMINATED BY ","
LINES TERMINATED BY "\r\n";
お礼
あそっか! ありがとうございます。