cmd 执行sql脚本,该怎么处理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cmd 执行sql脚本,该怎么处理相关的知识,希望对你有一定的参考价值。

1、微软的SQL Server数据库系统带有一个工具,工具名为SQLCMD.EXE。

2、ORACLE数据库也带有一个工具,工具名为sqlplus.exe。
3、ORACLE数据库:在CMD窗口下,sqlplus 用户名/密码@数据库,进行登录,然后把脚本文件拖进去就好。
4、SQL Server数据库系统下,SQLCMD的用法,请在CMD窗口下键入 sqlcmd.exe /?去查看。
5、更多详尽的资料,请百度一下“SQLCMD”或“sqlplus.exe”。

其它的数据库,有些支持,有些不支持,请针对性的搜索或提问。
参考技术A 1:进入cmd
2:输入sqlplus user/password@数据库名
3:@脚本路径,回车

将参数从 CMD 文件传递​​到 SQL 脚本

【中文标题】将参数从 CMD 文件传递​​到 SQL 脚本【英文标题】:Passing parameters from CMD file to SQL script 【发布时间】:2016-01-25 21:28:48 【问题描述】:

我对此有些陌生,但遇到了麻烦。我正在调用一个 CMD 文件,该文件然后调用一个 SQL 脚本来执行一些数据库命令。

相关的CMD文件代码为: 设置天数 = '360' sqlplus @\file.sql %days%

SQL 脚本摘录如下: 定义 numOfDays = &1 执行(numOfDays,.....)

执行时,我收到一条错误消息,指出 numOfDays 变量未声明。仅供参考,这是一个带有 Oracle 数据库的 Windows 操作系统。任何帮助将不胜感激,如果需要,可以提供更多信息。谢谢。

编辑: 在 'days' 参数周围添加了被意外遗漏的 '%' 符号。

【问题讨论】:

【参考方案1】:

您可以尝试用 % 包围参数。

例如:

SET days=360
sqlplus @\file.sql %days%

这就是 bat/cmd 文件识别变量的方式。

【讨论】:

感谢您的回复。我实际上已经在 CMD 文件中有这个。我很抱歉省略了这些信息。

以上是关于cmd 执行sql脚本,该怎么处理的主要内容,如果未能解决你的问题,请参考以下文章

将参数从 CMD 文件传递​​到 SQL 脚本

使用批处理执行 sql cmd

如何让Python脚本在cmd下执行

如何让mysql执行脚本

sql server 中怎样执行bat文件

怎么用批处理*.bat 执行文件目录下面的SQL语句脚本(批量的)