Mysql批处理

在批处理模式下使用mysql

在前面的章节中,你交互式地使用mysql输入查询并且查看结果。你也可以以批模式运行mysql。为了做到这些,把你想要运行的命令放在一个文件中,然后告诉mysql从文件读取它的输入:

shell> mysql < batch-file

如果在Windows下运行mysql,并且文件中有一些可以造成问题的特殊字符,可以这样操作:

C:\> mysql -e "source batch-file"

如果你需要在命令行上指定连接参数,命令应为:

shell> mysql -h host -u user -p < batch-file
Enter password: ********

当这样操作mysql时,则创建一个脚本文件,然后执行脚本。

如果你想在语句出现错误的时候仍想继续执行脚本,则应使用--force命令行选项。

为什么要使用一个脚本?有很多原因:

  • 如果你需要重复运行查询(比如说,每天或每周),可以把它编成一个脚本,则每次执行时不必重新键入。
  • 可以通过拷贝并编辑脚本文件从类似的现有的查询生成一个新查询。
  • 当你正在开发查询时,批模式也是很有用的,特别对多行命令或多语句命令序列。如果你犯了一个错误,你不必重新输入所有内容,只需要编辑脚本来改正错误,然后告诉mysql再次执行脚本。
  • 如果你有一个产生多个输出的查询,你可以通过一个分页器而不是盯着它翻屏到屏幕的顶端来运行输出:
·                shell> mysql < batch-file | more
  • 你可以捕捉文件中的输出以便进行进一步的处理:
·                shell> mysql < batch-file > mysql.out
  • 你可以将脚本分发给另外的人,以便他们也能运行命令。
  • 某些情况不允许交互地使用,例如, 当你从一个cron任务中运行查询时。在这种情况下,你必须使用批模式。

当你以批模式运行mysql时,比起你交互地使用它时,其默认输出格式是不同的(更简明些)。例如,当交互式运行SELECT DISTINCT species FROM pet时,输出应为:

+---------+
| species |
+---------+
| bird    |
| cat     |
| dog     |
| hamster |
| snake   |
+---------+

但是当以批模式运行时,输出应为:

species
bird
cat
dog
hamster
snake

如果你想要在批模式中得到交互输出格式,使用mysql -t。为了回显以输出被执行的命令,使用mysql -vvv。

你还可以使用源代码或 \.命令从mysql提示符运行脚本:

mysql> source filename;
mysql> \. filename

e.g 在d:\1.txt

show databses;

select * from menagerie.pet;

然后通过执行mysql -hlocalhost -uroot -p <d:1.txt

执行结果如下所示:

或者我们可以直接将批处理文件输出到指定路径下以文件的形式存储,

C:\Users\David>mysql -hlocalhost -uroot -p123 <d:\1.txt>mysql.out

同样的为了方便操作,可以这样执行,

也可以这样执行,

时间: 2024-10-14 00:30:18

Mysql批处理的相关文章

Windows中使用MySQL 批处理(五)

一.如何批量执行语句 1.将脚本存成一个脚本文件,比如company.sql 2.执行命令 mysql -h 主机 -u 用户名 -p <d:\dbdata\company.sql Enter password:****** 二.分页显示 mysql -h 主机 -u 用户名 -p <d:\dbdata\company.sql | more 三.捕获输出结果 1.输出的文件companyresult.out mysql -h 主机 -u 用户名 -p <d:\dbdata\company

MySQL批处理SQL语句

MySQL 支持批处理的模式执行一批SQL语句,下面的例子就是实验MySQL如何在windows下批处理执行SQL语句. create table test(id int,name varchar(20)); insert into test values(1,'watson'); batchfile.txt里包含下面的一些SQL 语句,此文件放在windows系统的c:/batchmysql/batchfile.txt insert into test select * from test;

系统优化总结(1)----MySql批处理

随着业务的蓬勃发展,我们的服务器日均访问量从年初的二三十万增加到现在的800万左右,对系统的原有架构和性能都是一个很大的挑战,所以最近对系统做了一次较大的优化升级来应对日益增长的服务器压力,对原来的业务逻辑和代码都做了重构,性能优化方面遵循了一个重要的原则:尽量减少请求与数据直接交互的次数和频度,其中一个重要的手段就是MySql批处理 这次重点对文章浏览模块进行了优化,这也是目前最大的流量入口,每天都有大量的文章浏览请求,每次有效浏览都对应一次用户加分操作和一次加分log记录,这样就会有频繁的数

java批处理、MySQL批处理

1 e: 2 cd MySQL\bin 3 mysql -uroot -proot 4 @pause MySQL批处理.bat 1 e: 2 cd JAVA\jdk1.8.0_77\bin 3 javac Hello.java 4 java Hello 5 @pause JAVA批处理.bat

mysql批处理/触发器/事务管理/存储过程

mysql里的批处理(sql语句) 格式: l mysql –u user –p < sql_file 表示从某个文件里执行sql语句 l mysql –u user –p < sql_file > out_file 表示从某个文件里执行,并将执行结果保存到out_file文件之中 举个例子: 小王每天早晨来之后,都需要查询班级共有多少人,还要查本学期共有几门课程,还要查询最近的考试成绩........需要做很多操作 sql.txt里  use pingtai;   //选择数据库 se

下载配置MySql,快速启动MySql批处理,MySQL客户端软件SQL-Front的配置---ShinePans

首先,下载 sql 绿色版,:  http://yunpan.cn/cgERHhTtV8XGh  提取码 85bc 然后解压即可用, 安装目录下有bin文件夹,从里面的命令中启动服务 如下:   然后进入cmd ,首先输入 D: (我把解压包放在D盘了)  进入D盘根目录 然后输入 cd D:\mysql-5.0.22-win32\bin  这样就进入了安装包的根目录,(可以复制路径然后 cd 即可) 然后输入 命令   mysqld --console  就可以开启mysql 服务 如下: 由

java语言MySQL批处理

本质来讲就是使用Statement和PreStatement的addBatch()方法 代码 import java.sql.*; public class GetConnection{ public static void main(String[] args){ Access2Database adb=new Access2Database(); Connection conn=adb.getConn(); //transaction dealing PreparedStatement ps

MySQL之mysql客户端工作的批处理一些使用手法

通常我们会用mysql这个客户端程序来连接mysql库.这个通常是工作在交互式模式下的.如我们连接上mysql并执行如下操作: mysql -uroot -h127.0.0.1 -P3306 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 96 Server version: 5.7.17-enterprise-commercial-advanced-log MySQL En

mysql 使用说明-3

3.4 Getting Information About Databases and Tables 获取数据库和表格的信息 如果你忘记了数据库或者表格的名字怎么办?或者给定的表格的结构怎么办?(例如你知道都有哪些列,叫什么名字吗) mysql 有几种方法能解决这个问题 从前文你已经知道,可以通过Show databases;语句查看数据库,通过 Database()函数能知道当前选择的数据库 mysql> SELECT DATABASE(); 如果你什么数据库也没选择,这条语句执行的结果是Nu