繁体   English   中英

MYSQL转储格式的文本文件

[英]MYSQL Dump Formatted Text File

我有一项服务,可以生成格式化的文本文件,其中包含来自MySQL数据库中某些表的信息。 目前,我以编程方式查询数据库并将其转储到TEXT文件中。 我想知道我是否可以从MYSQL数据库中执行相同的操作。

这意味着当新记录添加到特定表时,MYSQL将运行一段代码,该代码将生成该格式化的文本文件。

您没有对用例进行过多介绍,但也许CSV引擎可能正是您想要的?

手册

创建CSV表时,服务器会在数据库目录中创建表格式文件。 该文件以表名开头,扩展名为.frm。 存储引擎还创建一个数据文件。 其名称以表名开头,扩展名为.CSV。 数据文件是纯文本文件。 当您将数据存储到表中时,存储引擎会将其以逗号分隔的值格式保存到数据文件中。

mysql> CREATE TABLE test (i INT NOT NULL, c CHAR(10) NOT NULL)
    -> 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"

可以通过电子表格应用程序(例如Microsoft Excel或StarSuite Calc)读取甚至编写这种格式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM