![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
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";
No.1ベストアンサー
- 回答日時:
表の構成列は6個あるのに、csvファイルは5個しか値がないのでしょうか?
insert文では格納できたというのも、実際に使ったinsert文と違っているのでしょうか?
→列名のリストを省略しているのに、values句では5個の値しか指定しておらず、エラーになるはず。
>外部ファイルから読み込んだ場合にNULL値を設定するにはどのようにしたら
表の定義通りの順序、個数でcsvファイルを作るのであれば、
\N
を入れておけば、nullで格納できます。
「表の定義通りの順序、個数でcsvファイルを作らずに」といった要件があるなら、具体的な内容を提示してください。
回答ありがとうございます。
>\N
>を入れておけば、nullで格納できます。
\Nをセットすることでできました。
ありがとうございます。
>insert文では格納できたというのも、実際に使ったinsert文と違っているのでしょうか?
質問するために余分な情報を削除したりした際に、一列削除しわすれました。
混乱させてしまい恐縮です。
回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL my_itemsテーブルのIDにAUTO_INCREMENT を追加ができるかで 1 2023/01/03 09:09
- MySQL SHOW CREATE TABLE posts;これって何ですか? 3 2022/08/28 22:57
- MySQL エラー 1068 (42000): 複数の主キーが定義されていますエラー 2 2022/11/17 04:36
- MySQL `picture` varchar(255) のコマンドで間違いないでしょうか? 1 2022/11/21 04:08
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- MySQL MYSQL エラー 2 2022/10/18 11:37
- MySQL あと、MySQLの文字コードはutf8 気になりますね 1 2022/12/01 07:22
- PHP php エラー 2 2022/10/23 16:43
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
Date型にNULLをセットしたい VB2008+SQLServer2008
SQL Server
-
datetime型でNULL値を入れたい。
SQL Server
-
-
4
データベースのINT型項目にNULLはNG?
MySQL
-
5
mysqlへのインポート処理がうまくいかない
MySQL
-
6
DATE型にNULLをセットするには?
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLを作ったのですがうまくいき...
-
SQLです教えてくださいお願いし...
-
SQL教えてください。
-
(初心者)MySQLやmaraDBで、crea...
-
SQLです教えてくださいお願いし...
-
SQLです教えてください。
-
SQLです。こんな感じですか?あ...
-
次の時間帯の勝率の合計を求め...
-
エラー 1068 (42000): 複数の主...
-
SQLです教えてくださいお願いし...
-
htmlコードで書かれた表にphpで...
-
SQLでカラムを追加し、条件に合...
-
int(11)の(11)とは何を意味して...
-
SQLです下記の問合せを行うクエ...
-
#1062 - '0' は索引 'PRIMARY' ...
-
【初歩】ラジオボタンをつかっ...
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
-
utf8bomとutf8mb4の違いがいま...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
sql*loader 数値のロード
-
作成したレコードセットのCSV出...
-
MySQL Date型にNULLが設定でき...
-
CSVを1行しかインポートしない...
-
MySQLで連続csvファイルを読み...
-
BAT処理でCSVデータのインポート
-
sqlite3でcsvのインポートがで...
-
大容量CSVのインポート方法を教...
-
BCPコマンドについて
-
データベースからWordpressを復...
-
SQLサーバーにcsv.ファイル...
-
ACCESS VBA でのCSV取込エラー
-
insertを用いてテーブルにレコ...
-
MySQLのLOAD文を使ってCSV...
-
CSVインポート,日本語文字化け
-
csvファイルのヘッダとカンマの...
-
mysql .txtのファイルを変換? ...
-
MySQLにEXCELやCSVなどでの一括...
-
pathを指定してCSVをインポート...
-
【Access2000VBA】CSVファイル...
おすすめ情報