我正在尝试完全自动化我的构建,其中一部分是将 SQL 脚本应用于 SQL Server。
我创建了一个批处理文件,它调用 SQL Server 实用程序 (OSQL.EXE) 来应用脚本,如果我直接在 SQL Server 上调用它,它就可以工作。
但是我不能在我的构建机器上使用它,因为它没有安装 SQL Server。
有没有办法从我的构建机器在远程机器上启动我的批处理?
这个问题还有其他解决方案吗?
我正在尝试完全自动化我的构建,其中一部分是将 SQL 脚本应用于 SQL Server。
我创建了一个批处理文件,它调用 SQL Server 实用程序 (OSQL.EXE) 来应用脚本,如果我直接在 SQL Server 上调用它,它就可以工作。
但是我不能在我的构建机器上使用它,因为它没有安装 SQL Server。
有没有办法从我的构建机器在远程机器上启动我的批处理?
这个问题还有其他解决方案吗?
您可以在客户端计算机上免费安装SQLExpress并使用sqlcmd.exe,它相当于 MSSQLServer 上的 osql 和 isql 工具。
Microsoft SQL Server 2005 管理对象集合:然后您可以使用它来运行任何脚本或来自 C# 的任何其他内容。因此您可以创建一个使用 SMO 完成这些工作的项目,并在您的构建设置中使用它。
Microsoft SQL Server 2005 命令行查询实用程序:只安装 SQLCMD 并用它来做事。
要使用 osql,您需要安装 SQL Server,但您可以使用其他数据访问方法从远程计算机与 SQL Server 计算机进行通信。例如,您可以让 .VBS 脚本使用 ADO。
两个想法:
您是否尝试过复制 OSQL.exe 并在构建机器上安装客户端 SQL Server 库?我没有,但我认为值得一试。
编写一个连接和提供数据的程序,应该不会太难。从文件中读取 SQL 并将其提供给指定的 SQL Server。