JEE Study|JAVA EE|企业级开发学习网
标题:
MySQL8.0大师之路:第9章:MySQL教程-9.7 MySQL批处理模式
[打印本页]
作者:
JeeStudy
时间:
2020-4-4 19:24
标题:
MySQL8.0大师之路:第9章:MySQL教程-9.7 MySQL批处理模式
1.在前一节中,您以交互方式使用mysql输入语句并查看结果。您也可以以批处理模式运行mysql。为此,将要运行的语句放在文件中,然后告诉mysql从文件中读取其输入:
[root@CentOS8 angel]# mysql -p school < selectAll.sql
Enter password:
id name birth
1 zhangsan 1997-01-01
2 lisi 2008-09-10
3 wangwu 1919-05-01
4 zhaoliu 2018-08-10
5 ZHOUXINGXING 1956-08-25
6 DASHENG 1919-12-23
说明:
-p:需要数据密码
school:指定在哪个数据库上执行
< selectAll.sql: "< 文件名称"
2.这里selectAll.sql 文件内容如下:
[root@CentOS8 angel]# cat selectAll.sql
select * from student;
3.这里也可以把查询结果输出到一个文件:
[root@CentOS8 angel]# mysql -p school < selectAll.sql > ./selectAll.log
Enter password:
说明:输出到文件用 "> 文件名"
4.注意:这里如果被执行的批处理文件中包含
特殊字符
需要用下面的语句执行:
[root@CentOS8 angel]# mysql -p school
-e "source selectAll.sql"
Enter password:
+------+--------------------+----------------+
| id | name | birth |
+------+--------------------+----------------+
| 1 | zhangsan | 1997-01-01 |
| 2 | lisi | 2008-09-10 |
| 3 | wangwu | 1919-05-01 |
| 4 | zhaoliu | 2018-08-10 |
| 5 | ZHOUXINGXING | 1956-08-25 |
| 6 | DASHENG | 1919-12-23 |
+------+---------------------+----------------+
5.在执行语句的时候,可以使用
-v
选项来 输出更多的信息:
[root@CentOS8 angel]# mysql
-v
-p school < selectAll.sql
6.在执行语句的时候,可以使用
--xml 或 -X
选项来将数据输出到xml文件中:
[root@CentOS8 angel]# mysql --xml -p school < selectAll.sql
或者直接将结果输出到文件中:
[root@CentOS8 angel]# mysql --xml -p school < selectAll.sql >./data.xml
[root@CentOS8 angel]# cat data.xml
<?xml version="1.0"?>
<resultset statement="select * from student" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<row>
<field name="id">1</field>
<field name="name">zhangsan</field>
<field name="birth">1997-01-01</field>
</row>
<row>
<field name="id">2</field>
<field name="name">lisi</field>
<field name="birth">2008-09-10</field>
</row>
<row>
<field name="id">3</field>
<field name="name">wangwu</field>
<field name="birth">1919-05-01</field>
</row>
<row>
<field name="id">4</field>
<field name="name">zhaoliu</field>
<field name="birth">2018-08-10</field>
</row>
<row>
<field name="id">5</field>
<field name="name">ZHOUXINGXING</field>
<field name="birth">1956-08-25</field>
</row>
<row>
<field name="id">6</field>
<field name="name">DASHENG</field>
<field name="birth">1919-12-23</field>
</row>
</resultset>
7.如果已经登录到服务器也可以用下面这两种方式执行:
mysql> \. selectAll.sql
mysql> source selectAll.sql
欢迎光临 JEE Study|JAVA EE|企业级开发学习网 (http://jeestudy.com/)
Powered by Discuz! X3.2