mysql:11563
From: とみたまさひろ <とみたまさひろ <tommy@xxxxxxxxxx>>
Date: Tue, 14 Jun 2005 18:12:08 +0900
Subject: [mysql 11563] Re: CSVをインポートするときのNULLについて
とみたです。 On Tue, 14 Jun 2005 15:41:15 +0900 hata@xxxxxxxxxx wrote: > '山田 太郎',25,NULL,'ほにゃらら' > の様にNULL値のフィールドに NULL と入っていれば正しく読み込めるのですが > 使用しているそのRDBからは > '山田 太郎',25,,'ほにゃらら' > の様にNULL値は何も入らない形でしか出力できません。これをMySQL側に正しく > インポートするにはどうすればいいでしょうか。 > このままだと空文字列として読み込まれてしまいます。 その RDB は、NULL と空文字列を区別してないのでしょうか? 移行元で区別できないのであれば、MySQL 側で区別するのは無理だと思います。 空文字列をすべて NULL として扱って良いのであれば、空文字列を NULL に置 き換えるような簡単なフィルタをかませば良いと思います。 たとえば Ruby だとこんな↓感じ。 ruby -lne 'puts $_.split(/,/,-1).map{|i| i.empty? ? "NULL" : i}.join(",")' # 「,」を含む文字列のことを考慮してないのでまずいかもしれません。 -- とみたまさひろ <tommy@xxxxxxxxxx> 日本MySQLユーザ会 http://www.mysql.gr.jp
11561 2005-06-14 15:41 [<hata@xxxxxxxxxx> ] CSVをインポートするときのNULLについて -> 11563 2005-06-14 18:12 ┗[とみたまさひろ <tomm] 11569 2005-06-15 09:17 ┗[<hata@xxxxxxxxxx> ] 11570 2005-06-15 10:04 ┗["T.Sasaki" <papasan2] 11571 2005-06-15 10:37 ┣[Shinichiro Yamamoto ] 検索時に大文字小文字を区別する方法 11572 2005-06-15 10:46 ┃┗[<numata@xxxxxxxxxx> ] 11573 2005-06-15 11:03 ┃ ┗[Shinichiro Yamamoto ] 11585 2005-06-16 16:15 ┗[<hata@xxxxxxxxxx> ]