使用批处理文件保存MySQL查询时出现问题
最初我给它贴上了不同的标签,但后来我发现了我的问题,但是出现了不同的问题,所以现在我正在编辑这个 首先让我开始。我不是一个“程序员”,我所做的一切都来自于研究。我试图完成的是在循环中运行批处理文件。它可以在我的VPS上连接到MySQL。当有信息时,它会将MySQL命令的返回保存到文本文件中。问题是,当数据库中没有新信息时,它只是将其保存为一个空白文本文件。如果数据库中没有任何信息,我宁愿它根本不保存为文本。这就是我目前所拥有的。我也在WindowsServer2008上运行这个使用批处理文件保存MySQL查询时出现问题,mysql,sql,batch-file,text,Mysql,Sql,Batch File,Text,最初我给它贴上了不同的标签,但后来我发现了我的问题,但是出现了不同的问题,所以现在我正在编辑这个 首先让我开始。我不是一个“程序员”,我所做的一切都来自于研究。我试图完成的是在循环中运行批处理文件。它可以在我的VPS上连接到MySQL。当有信息时,它会将MySQL命令的返回保存到文本文件中。问题是,当数据库中没有新信息时,它只是将其保存为一个空白文本文件。如果数据库中没有任何信息,我宁愿它根本不保存为文本。这就是我目前所拥有的。我也在WindowsServer2008上运行这个 @echo of
@echo off
:loop
timeout /T 5
mysql --host=111.11.111.11 --port=3306 --user=user_name --password=password --database=db_name --execute="SELECT * FROM tablename LIMIT 1" > results.txt
if exist c:\users\administrator\desktop\results.txt goto end
goto loop
:END
start program.exe
exit
因此,如果MySQL命令返回信息,我需要的是保存为文本的内容,但是如果MySQL命令返回空,它将持续循环,直到有内容存在。您是否尝试将结果保存到变量并进行检查
@echo off
:loop
timeout /T 5
Myans = mysql --host=111.11.111.11 --port=3306 --user=user_name --password=password --database=db_name -- execute="SELECT * FROM tablename LIMIT 1"
if not %Myans%=="" ( Myans >> results.txt )
if exist c:\users\administrator\desktop\results.txt goto end
goto loop
:END
start program.exe
exit
你在写代码,所以你现在是个程序员了!当你说“没用”时,发生了什么?你能提供一些日志吗?好的。我不得不改变对问题的描述,因为我修复了第一个问题,只是不想开始新的帖子。我试图弄清楚,如果MySQL表返回空,如何使批处理忽略save to text命令。因此,任何帮助都是感激的!谢谢那么new information=查询是否显示了一些内容呢?是的,DB的设计目的是在使用信息行后删除该行。这意味着它在大多数情况下都是空的。因此,我只想在运行MySQL查询时,如果数据库中有这行信息,就保存一个文本文件?