CSV
ストレージエンジンはコンマ区切りの値を使ったフォーマットでデータをテキストファイルに保存します。
MySQLを作成する時、このストレージエンジンを使用するには、
configure する為に
--with-csv-storage-engine
オプションを使います。
ソースからMySQLを構築し CSV
ストレージエンジンの機能を有効にするには、--with-csv-storage-engine
オプションの configure
コマンドを呼び出します。
CSV
エンジンのソースを調べるには、MySQL
ソースディストリビューションの
storage/csv
ディレクトリを検索します。
CSV
テーブルを作成すると、サーバはデータベースのディレクトリ上にテーブル形式のファイルを作成します。ファイルはテーブル名から始まり
.frm
拡張子が付きます。このストレージエンジンはデータファイルも作成します。その名前はテーブル名で始まり
.CSV
という拡張子を持ちます。このデータファイルはシンプルなテキストファイルです。データをテーブルに保存する時、ストレージエンジンはコンマで区切られた値のフォーマットでそのデータをデータファイルに保存します。
mysql>CREATE TABLE test(i INT, c CHAR(10)) ENGINE = CSV;
Query OK, 0 rows affected (0.12 sec) mysql>INSERT INTO test VALUES(1,'record one'),(2,'record two');
Query OK, 2 rows affected (0.00 sec) Records: 2 Duplicates: 0 Warnings: 0 mysql>SELECT * FROM test;
+------+------------+ | i | c | +------+------------+ | 1 | record one | | 2 | record two | +------+------------+ 2 rows in set (0.00 sec)
MySQL 5.1.9から、
CSVテーブルを作成するとテーブルの状態とそのテーブル内の行数を記憶する、対応メタファイルも同時に作成されるようになりました。このファイルの名前は
CSM
という拡張子のついたテーブル名と同じです。
前回のステートメント実行時に作成されたデータベースディレクトリの中の
test.CSV
ファイルを分析すると、その中身はこのようになっているでしょう。
"1","record one" "2","record two"
このフォーマットはマイクロソフトエクセルやスターオフィスなどのような表計算アプリケーションによって読み取る事も、書き込む事も可能です。