SQLite 3にテーブルのダブルクォーテーションが含まれるデータをCSV形式でエクスポートする

2022年1月10日

環境
Windows10 64bit
SQLite 3.37.0

使用例
1.ダブルクォーテーションが含まれる文字列のデータを挿入します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sqlite> insert into stutbl(uid,uname)values(1001,'ya"mada');
sqlite> insert into stutbl(uid,uname)values(2002,'ka"ma"da');
sqlite> insert into stutbl(uid,uname)values(3004,'kawasaki');
sqlite> insert into stutbl(uid,uname)values(1001,'ya"mada'); sqlite> insert into stutbl(uid,uname)values(2002,'ka"ma"da'); sqlite> insert into stutbl(uid,uname)values(3004,'kawasaki');
sqlite> insert into stutbl(uid,uname)values(1001,'ya"mada');
sqlite> insert into stutbl(uid,uname)values(2002,'ka"ma"da');
sqlite> insert into stutbl(uid,uname)values(3004,'kawasaki');

2.「stutbl」テーブルの内容を確認します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sqlite> select * from stutbl;
uid,uname
1001,"ya""mada"
2002,"ka""ma""da"
3004,kawasaki
sqlite> select * from stutbl; uid,uname 1001,"ya""mada" 2002,"ka""ma""da" 3004,kawasaki
sqlite> select * from stutbl;
uid,uname
1001,"ya""mada"
2002,"ka""ma""da"
3004,kawasaki

3.CSV形式でデータのエクスポートを実行します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sqlite> .header on
sqlite> .mode csv
sqlite> .once C:\\sqlite\\sqlite3\\result88.csv
sqlite> select * from stutbl;
sqlite> .header on sqlite> .mode csv sqlite> .once C:\\sqlite\\sqlite3\\result88.csv sqlite> select * from stutbl;
sqlite> .header on
sqlite> .mode csv
sqlite> .once C:\\sqlite\\sqlite3\\result88.csv
sqlite> select * from stutbl;

4.result88.csvの内容を確認します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
uid,uname
1001,"ya""mada"
2002,"ka""ma""da"
3004,kawasaki
uid,uname 1001,"ya""mada" 2002,"ka""ma""da" 3004,kawasaki
uid,uname
1001,"ya""mada"
2002,"ka""ma""da"
3004,kawasaki

ダブルクォーテーションが二重化されエスケープされています。

SQLite

Posted by arkgame