14.9. The CSV
Storage Engine
The CSV
storage engine stores data in text
files using comma-separated values format.
To enable this storage engine, use the
--with-csv-storage-engine
option to
configure when you build MySQL.
The CSV
storage engine is included in MySQL-Max
binary distributions. To enable this storage engine if you build
MySQL from source, invoke configure with the
--with-csv-storage-engine
option.
To examine the source for the CSV
engine, look
in the storage/csv
directory of a MySQL
source distribution.
When you create a CSV
table, the server creates
a table format file in the database directory. The file begins
with the table name and has an .frm
extension. The storage engine also creates a data file. Its name
begins with the table name and has a .CSV
extension. The data file is a plain text file. When you store data
into the table, the storage engine saves it into the data file in
comma-separated values format.
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)
If you examine the test.CSV
file in the
database directory created by executing the preceding statements,
its contents should look like this:
"1","record one"
"2","record two"
The CSV
storage engine does not support
indexing.