從文本文件中讀取數據

1 向數據庫中導入數據文件

load data infile 文件名 into table 表名 選項;

如:load data infile 'C:/data/t.CSV' into table customer fields terminated by ',';

2 指定load data infile 命令中的數據形式的選項
(1)fields terminated by 分隔字符(默認爲[\t],即tab字符)
(2)lines terminated by 換行字符(默認爲[\n])
ignore 最初跳過的行 lines(默認爲0)

3 數據文件的路徑用絕對路徑,如C:/data/t.CSV

4 將表中數據以文本文件形式導出

select * into outfile 文件名 選項 from 表名;
如:select * into outfile 'C:/data/out.csv' fields terminated by ',' from customer;

5 運行保存了SQL系列語句的文件

source 文本文件名

如:source C:\data\sql.txt

注意:source並非sql命令,因此命令行的最後不能以分號[;]結束。並且路徑不能有中文,否則無法打開。

6 在命令行窗口不啓動mysql監視器而直接運行SQL文本文件的命令,具體語法如下:
在命令行窗口中執行文件中保存的SQL命令系列

mysql 數據庫名 -u 用戶名 -p 密碼 -e "MySQL 監視器的命令"
如:mysql -u root -p123456 -e "source C:\data\sql.txt"

7 將SQL的執行結果保存到文件中的方法,即[在MySQL監視器中使用tee命令]和[使用重定向,將結果輸出到文件中]
 (1)使用重定向,將結果輸出到文件中,使用[>]符號,這是輸出結果不會在顯示器上輸出,而是輸出到指定的文本文件中,例如:

mysql -u root -p123456 > log.txt
mysql -u root -p123456 -e "source C:/data/sql.txt" > log.txt

  可以使用[TYPE]命令查看文本文件的內容,如:TYPE home_out.txt;

 (2)在MySQL監視器中使用tee命令:tee 輸出的文件名

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章