在连接字符串中使用VBScript参数

时间:2019-01-14 15:02:52

标签: vbscript scom

我正在使用vbs脚本查询SQL Server。

在连接字符串中,我尝试传输以下参数:服务器名称(PKNSQLEXP07 \ SQLINST7)和端口号(2890)。

问题是,我知道VBScript中的参数需要在连接字符串之外,但是我不确定如何实现。

这是我的连接字符串,不带参数:

strConnection = "Driver={SQL Server};Server=PKNSQLEXP07\SQLINST7,2890;Database=master;Trusted_Connection=TRUE"

这是带有参数的:

    ConnectionString = Wscript.Arguments(0)
TcpPort = Wscript.Arguments(1)

strConnection = "Driver={SQL Server};Database=master;Trusted_Connection=TRUE;Server=" & ConnectionString &,& TcpPort
objCN.Open strConnection

参数( ConnectionString TcpPort )之间应带有逗号。

但是到目前为止,我仍然没有运气,因为我当前的连接字符串带有参数。

1 个答案:

答案 0 :(得分:1)

您正在将字符串串联在一起以构成一个大字符串。您有两种类型的字符串。

  1. 您不想引用的变量中的字符串,否则它们将被视为...
  2. 字符串文字,它们只是用引号引起来的字符串,例如"Hi, I'm a string"

您的尝试非常接近,但是逗号是String Literal,这意味着该内容必须用引号引起来:

strConnection = "Driver={SQL Server};Database=master;Trusted_Connection=TRUE;Server=" & ConnectionString & "," & TcpPort

作为调试步骤,您可以使用MsgBox strConnection查看从此串联派生的字符串,然后再将其发射到数据库。那应该使您对该行中发生的事情有很多了解。