如何发布sql server的配置

时间:2015-08-09 11:48:23

标签: sql-server vb6

我有一个连接到SQL Server数据库的vb6程序,我将其配置为在网络中共享。

https://www.youtube.com/watch?v=OqB3GBKybng

并打开一个端口以允许网络访问

我的vb6代码连接

 CN.Open "Provider =SQLNCLI;workstation id=192.168.45.100,333;packet size=4096;user id=MyUser;pwd=MyPassword;data source=192.168.45.100,333;persist security info=False;initial catalog=MyDB;"

我将数据库配置为能够使用openrowset语句并将这两个代码放入

sp_configure 'show advanced option', 1
GO
RECONFIGURE

sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE

问题是当我想发布我的程序时,我想在我的客户端计算机中自动安装配置而不是手动。

1 个答案:

答案 0 :(得分:0)

如果远程SQL Server存在且已配置为允许远程连接,则您需要做的就是在安装期间针对它运行SQL查询。这可以通过安装程序运行的自定义代码或脚本主机(如PowerShell或VBScript)来完成。下面是一个PowerShell脚本,它将连接字符串作为命令行参数:

    [CmdletBinding()]
    param (
        [string]$ConnectionString
     )

    $connection = New-Object System.Data.SqlClient.SqlConnection($ConnectionString);
    $connection.Open();
    $command = New-Object System.Data.SqlClient.SqlCommand("EXECUTE sp_configure 'show advanced option', 1;RECONFIGURE;", $connection);
    $nul = $command.ExecuteNonQuery();
    $command.CommandText = "EXECUTE sp_configure 'Ad Hoc Distributed Queries', 1;RECONFIGURE;";
    $nul = $command.ExecuteNonQuery();
    $connection.Close();

如果您的安装程序没有本机PowerShell支持,则可以使用类似下面示例的命令来运行脚本文件。

PowerShell -ExecutionPolicy RemoteSigned -File ".\ConfigureSql.ps1" -ConnectionString "Data Source=192.168.45.100,333;User Id=MyUser;Password=MyPassword"