MySQL から「改行」「カンマ」「ダブルクォート」「シングルクォート」を含むフィールドをエクスポートして他のデータベースにインポートする方法

MySQL からのエクスポート

やたら長い標題になってしまいましたが、MySQL からエクスポートしたデータに以下のような内容が含まれていた際に、その情報を失わずにいかに他のデータベース(や Excel*1 など)にインポートするか、ということです。なお、ここでは CSV(Character Separated Values)で吐き出した場合を考えています。

  • 改行
  • カンマ
  • ダブルクォート
  • シングルクォート

*1:Excelは無理かも

続きを読む

Ubuntu 16.04 LTS にて psycopg2 のインストール時にエラーが出る場合

結論

以下を入れましょう。

# apt-get install python3-dev
# apt-get install libpq-dev

これでエラーが出ないはずです。

# pip install psycopg2
Installing collected packages: psycopg2
  Running setup.py install for psycopg2 ... done
Successfully installed psycopg2-2.6.2

PostgreSQL でダブルクォートを含んだフィールドが正しくインポートできない場合

PostgreSQL で CSV ファイルのインポート

PostgreSQL にて CSV(広義の意味の方で、Character Separated Values)からのインポートをする場合に、ダブルクォートが含まれているフィールドがインポートできずにハマった話です*1

*1:ダブルクォートをフィールドに含むことの是非は置いといて

続きを読む

SQLite で空の値が指定できない場合

SQLite で空の値

例えば、以下のようなデータがあったとします。

id money
1 1000
2
3 500

このテーブルでmoneyが空であるレコードを指定したい場合に結構ハマってしまいました。

ダメな書き方

以下の書き方だとダメでした。

money = ""
money = ''
money = NULL
money IS NULL

結論

これは気づかなかった。

money IS ""
Powered by はてなブログ