从文本文件中读取数据

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 输出的文件名

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