mysql - 如何创建执行多个sql文件的批处理文件

标签 mysql sql windows batch-file

我有几个sql文件需要每天执行。

我想用批处理文件实现它。

假设*.bat文件和*.sql文件在一个文件夹中

我刚开始使用 *.bat 文件。

是的,可能重复,但我找到了很多答案,但我不明白所有答案。

我正在使用 mySQL、dbforge、windows 7。

我在 *.bat 文件中有这个字符串:

echo mysql --host=localhost --user=myuser --password=mypass --database=dbName

但是如果我执行它,什么也不会发生。

我的sql查询:

INSERT INTO s_g01(customer_id, city)
(SELECT t1.customer_id,dr.caption 
  FROM devls.dict_regions dr
  INNER JOIN devls.adm_terminal at
    ON dr.id = at.region_id
  INNER JOIN devls.transaction t1
    ON at.id = t1.terminal_id AND t1.reason_id = 6) 
  ON DUPLICATE KEY UPDATE city = dr.caption

最佳答案

更新批处理文件中的以下行并通过调度程序调度此批处理文件。

cd "c:\Program Files (x86)\MySQL\MySQL Server 5.5\bin"

mysql -h server_ip -u<usernane> -p<password> db_name < script.sql

pause
exit

script.sql 文件应该与批处理文件所在的路径相同,否则您需要提供带有 script.sql 文件名的完整路径。

关于mysql - 如何创建执行多个sql文件的批处理文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30994017/

相关文章:

mysql - 如何从 mysql docker 容器重启 mysql 服务

php - 需要一些 PHP 逻辑来遍历一些 mysql 数据库结果

php - 使用MySQL进行TRIM和SUBSTRING_INDEX删除右侧的所有字符

mysql - SQL SELECT ... INTO 简介 - 为什么它不运行?

windows - 带有特殊字符的密码参数

php - 如何捕获 pdo 语句错误?

mysql - 如何使用GROUP BY获取每个组中的最新记录?

sql - 将 XML 文件水平导入到 SQL Server

python - 使用Python的_winreg写入DWORD值?

php - 使路径在 linux 和 Windows 上都有效