批量向mysql插入(文本)数据的方法有以下3种:
方法1.
可以先将要插入的数据统一保存在.sql文件中,各个insert语句直接用分号分开。之后执行命令:source.sql文件即可。
如,将500条的insert语句用分号分开保存在a.sql文件中,之后执行sourcea.sql即可一次性将该500条记录插入数据库表中。
catword_limit.txt|awk-F"\t"'{print"insertintotbl_sensitive_words_test(Sensitive_Words)values(\""$1"\");"}'>test.sql
aliassmsstat='mysql-h10.10.10.10-usms-psms'
smsstat
方法2.
loaddatalocalinfile'/home/ill-word/word_limit.txt'intotabletbl_sensitive_words_test;
##该方法导入文本数据,文本内容的格式必须与表结构的字段对应一致。且可在SQL语句后加入Fields/LINESTERMINATEDBY'\r\n';指定以'\r\n'作为行的结尾符,默认的字段分隔符为tab.##在某些mysql版本上loaddata有可能不能使用,且必须保证文本文件的编码和数据库表的编码一样,否则有可能会乱码。
loaddatalocalinfile'/path /abc.txt'intotabletbl_ill_word;#默认的字段分隔符为tab,可通过在该语句后加 入:filedsterminatedby'abc'来指定分隔符为abc。也可用:linesterminatedby'\r \n'来指定每行的结束分隔符。
方法3.
headword_limit.txt|awk-F"\t"'{cmd="mysql-A-C-h10.10.209.61-usms-psmssms_stat-qe\"insertintotbl_sensitive_words_test(Sensitive_Words)values(\""$2"\")\"";system(cmd)}'###syntaxError???再确定是否可行!
方法4.
还可以通过创建存储过程来实现。
批量导出数据到文本文件中
1.
$aliassmsdb='mysql-h10.10.4.20-uabc-pabcsmsa2P'
$smsdb-Nqe"select8fromsmsa2p;">abc.txt
2.
select*fromsmsa2pintooutfileabc.txtfieldsterminatedby","enclosedby""";##将看到每个字段都用","进行了分隔,且每个字段都用"""包括了起来
如何执行一个mysql的sql脚本文件
sql脚本是包含一到多个sql命令的sql语句,我们可以将这些sql脚本放在一个文本文件中(我们称之为“sql脚本文件”),然后通过相关的命令执行这个sql脚本文件。基本步骤如下:
一、创建包含sql命令的sql脚本文件文件中包含一系列的sql语句,每条语句最后以;结尾,假设文件名为ss.sql,文件内容示例如下(使用“--”进行注释):
--创建表
createtable表名称
(
GuidVarchar(38)notnullprimarykey,
TitleVarchar(255),
)TYPE=InnoDB;
--在表A中增加字段Status
altertableAaddStatusTinyIntdefault'0';
--在表A上创建索引
createindexXX_TaskId_1onA(Id_);
--在A表中添加一条记录
InsertintoA(Id,ParentId,Name)values(1,0,'名称');
--添加、修改、删除数据后,有可能需要提交事务
Commit;
二、执行sql脚本文件
方法一使用cmd命令执行(以windows为例,unix或linux的在其类似的控制台下运行)
格式:【Mysql的bin目录】\mysql–u用户名–p密码–D数据库
示例:D:\mysql\bin\mysql–uroot–p123456-Dtest注意事项:
1、如果在sql脚本文件中使用了use数据库,则-D数据库选项可以忽略
2、如果【Mysql的bin目录】中包含空格,则需要使用“”包含,如:
“C:\ProgramFiles\mysql\bin\mysql”–u用户名–p密码–D数据库
3、如果需要将执行结果输出到文件,可以采用以下模式
D:\mysql\bin\mysql–uroot–p123456-Dtest>d:\dd.txt
方法二进入mysql的控制台后,使用source命令执行
1、进入mysql控制台
D:\mysql\bin\mysql–uroot–p123456-Dtest
2、执行sql脚本文件
Mysql>source【sql脚本文件的路径全名】