.bat文件可以执行sql查询并返回一个值吗?

Pia*_*Pia 5 sql oracle nsis batch-file return-value

如何从.bat文件中调用查询?(比如我的查询是:从系统中选择版本).

我的.bat文件可以保存此查询返回的输出吗?我想在我的NSIS脚本中使用此输出.

Pat*_*uff 9

对于Oracle:

如何通过sql plus从命令行发出单个命令?

@echo select version from system; | sqlplus username/password@database 
Run Code Online (Sandbox Code Playgroud)

您可以将输出传递给文件并使用它,或者将其包装在for命令中以解析批处理文件中的输出.


Dan*_*llo 5

编辑:这个答案是针对SQL Server,而不是Oracle.(问题发布时尚不清楚).

您可能想要检查sqlcmd实用程序.

sqlcmd实用程序允许您在命令提示符下输入Transact-SQL语句,系统过程和脚本文件.以下示例在sqlcmd启动时执行查询,然后立即退出.可以执行多分号分隔的查询:

sqlcmd -d AdventureWorks -Q "SELECT FirstName, LastName FROM Person.Contact WHERE LastName LIKE 'Whi%';"
Run Code Online (Sandbox Code Playgroud)

要将查询的输出保存到文件,可以使用该-o C:\< filename>选项.