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 sql/examples
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"
This format can be read, and even written, by spreadsheet applications such as Microsoft Excel or StarOffice Calc.
The CSV
storage engine does not support
indexing.