2008-11-14 48 views
2

我试图完全自动化我的构建,部分是将SQL脚本应用到SQL Server。
我创建了一个调用SQL Server实用程序(OSQL.EXE)来应用脚本的批处理文件,如果我直接在SQL服务器上调用它,它将起作用。
但我不能在我的生成机器上使用它,因为它没有安装SQL Server。如何在远程SQL Server上应用SQL脚本?

有没有办法从我的生成机器启动远程机器上的批处理?
有没有解决这个问题的另一种方法?

回答

2

只安装Sql Server Client

  • 的Microsoft SQL Server 2005管理对象集合: ,然后你可以用它来运行任何脚本或任何东西从C#别的。 所以你可以创建一个项目,用SMO做这些工作,并在你的构建设置中使用它。

  • Microsoft SQL Server 2005命令行查询实用程序:只安装SQLCMD并执行相关操作。

0

要使用osql,需要安装SQL Server,但可以使用其他数据访问方法从远程计算机与SQL Server计算机进行通信。例如,您可以使用.VBS脚本使用ADO。

0

两个想法:

  1. 您是否尝试过复制OSQL.EXE和安装构建机器上的客户端的SQL Server库?我没有,但我认为这是值得一试。

  2. 编写一个连接并提供数据的程序,不应该太难。从文件读取SQL并将其提供给指定的SQL Server。

+0

如果我OSQL.EXE到我的构建机器复制,那不是侵犯版权? – 2008-11-14 18:48:41

+0

呵呵,我不知道那个,好点 – 2008-11-14 19:12:47

2

你可以你的客户端机器上安装的SQLExpress自由和使用sqlcmd.exe,这是对OSQL的MSSQLServer和isql工具等效。