我有一個服務,產生格式化的文本文件與來自某些表中的信息在MYSQL數據庫。 目前我以編程方式查詢數據庫並將其轉儲到TEXT文件中。 我不知道我是否可以在MYSQL數據庫中做同樣的事情。MYSQL轉儲格式化文本文件
這意味着當一個新記錄被添加到特定的表時,MYSQL將運行一段代碼來生成該格式化的文本文件。
我有一個服務,產生格式化的文本文件與來自某些表中的信息在MYSQL數據庫。 目前我以編程方式查詢數據庫並將其轉儲到TEXT文件中。 我不知道我是否可以在MYSQL數據庫中做同樣的事情。MYSQL轉儲格式化文本文件
這意味着當一個新記錄被添加到特定的表時,MYSQL將運行一段代碼來生成該格式化的文本文件。
你沒有講太多關於你的使用案例,但也許CSV引擎可能是你在找什麼?
從manual:
當你創建一個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或StarOffice Calc等應用程序。
你可以從[觸發器](http://「選擇...輸入文件'文件名'](http://dev.mysql.com/doc/en/select-into.html) dev.mysql.com/doc/en/triggers.html)。 – eggyal
@eggyal不確定,但問題可能是文件被覆蓋而不是附加新條目?所以每次插入記錄時都必須寫整個表格。 – fancyPants