Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2005 VBScript如何设置连接字符串_Sql Server 2005_Vbscript_Connection String_Database Connection_Wsh - Fatal编程技术网

Sql server 2005 VBScript如何设置连接字符串

Sql server 2005 VBScript如何设置连接字符串,sql-server-2005,vbscript,connection-string,database-connection,wsh,Sql Server 2005,Vbscript,Connection String,Database Connection,Wsh,我不确定之前是否讨论过这个问题,但我有以下代码(我从Access数据库的示例中更改) 我不知道在'Provider'和'datasource'中放什么。我正在使用MS SQL Server 2005,如何在我的计算机中查找此信息?求你了,即使我试着从这里开始,但我仍然不知道怎么做 Dim conn,sql sql=“从tblOutbox中选择* Set conn=CreateObject(“ADODB.Connection”) 与康涅狄格州 .Provider=“myProvider” .Mo

我不确定之前是否讨论过这个问题,但我有以下代码(我从Access数据库的示例中更改)

我不知道在'Provider''datasource'中放什么。我正在使用MS SQL Server 2005,如何在我的计算机中查找此信息?求你了,即使我试着从这里开始,但我仍然不知道怎么做


Dim conn,sql
sql=“从tblOutbox中选择*
Set conn=CreateObject(“ADODB.Connection”)
与康涅狄格州
.Provider=“myProvider”
.Mode=adModeReadWrite
.ConnectionString=“数据源=mysource;”和_
“数据库=myDbase.mdf;”
打开
以
如果连接状态=adStateOpen,则
已建立WScript.Echo“连接”
如果结束
关闭连接
设置连接=无

下面是使用access数据库的示例:

Dim conn 
Dim sql
sql = "SELECT * FROM tblOutbox"
Set conn = CreateObject("ADODB.Connection")
   With conn
      .Provider = "Microsoft.Jet.OLEDB.4.0"
      .Mode = adModeReadWrite
      .ConnectionString = "Data Source= f:/Status.mdb"
      .Open 
   End With
   WScript.Echo "Connection was opened." 
conn.Close
Set conn = Nothing
WScript.Echo "Connection was closed."

暗箱
dimsql
sql=“从tblOutbox中选择*
Set conn=CreateObject(“ADODB.Connection”)
与康涅狄格州
.Provider=“Microsoft.Jet.OLEDB.4.0”
.Mode=adModeReadWrite
.ConnectionString=“数据源=f:/Status.mdb”
打开
以
WScript.Echo“连接已打开。”
关闭连接
设置连接=无
WScript.Echo“连接已关闭。”

尝试在连接字符串中设置提供程序

conn.ConnectionString = "Provider=SQLOLEDB.1;Data Source=XXX;Initial Catalog=XXX;User ID=<XXX>;Password=<XXX>;"
conn.ConnectionString=“Provider=SQLOLEDB.1;数据源=XXX;初始目录=XXX;用户ID=;密码=;”

注意:我还没有测试它,但它应该可以满足所有连接字符串的需要:

使用SQL Server,您不直接连接到文件。Access,作为一个基于文件的RDBMS有点不同

按照您的示例,它将如下所示:

Dim conn, sql
sql = "SELECT * FROM tblOutbox"
Set conn = CreateObject("ADODB.Connection")
With conn
      .Mode = adModeReadWrite
      .ConnectionString = "Provider=SQLOLEDB;server=[servername];database=[databasename]uid=[insertuser];pwd=[insertpassword];"
      .Open 
End With
If conn.State = adStateOpen Then
      WScript.Echo "Connection was established."
End If
conn.Close
Set conn = Nothing

通常有一种更简洁的方法可以做到这一点,但如果没有上下文,很难给出更好的示例

多亏了您的帮助,我终于找到了解决方案。 在管理工具、数据源(ODBS)、驱动程序选项卡下,我使用provider:SQLNCLI、服务器:datasource,并向代码中添加记录集rs。看来,没有这一点,这种联系就无法建立。我不知道发生了什么事

Dim连接,rs,sql,连接字符串
sql=“从tblOutbox中选择*
Set rs=CreateObject(“ADODB.Recordset”)
Set conn=CreateObject(“ADODB.Connection”)
与康涅狄格州
.Provider=“SQLNCLI”
.Mode=adModeReadWrite
.ConnectionString=“SERVER=。\SQLExpress;AttachDbFilename=F:\Test2.mdf;Database=Test2.mdf;Trusted\u Connection=Yes;”
打开
已建立WScript.Echo“连接”
以
康涅狄格州开放式sql
如果连接状态=adStateOpen,则
已建立WScript.Echo“连接”
其他的
Echo“无连接”
如果结束
rs.Close
设置rs=无
关闭连接
设置连接=无

要使用SQL 2005客户端,请使用SQLNCLISQOLEDB和SQLNCLI的提供程序,两者都可以与SQL 2005一起使用。我没有看到两者的性能差异。好的,从我的代码中,我删除了provider,并用以下代码替换模式:conn.ConnectionString=“provider=SQLOLEDB.1;Data Source=F:\admin.mdf;Initial Catalog=admin;”我还删除了uid并传递,因为我没有使用它。出现这种类型的错误:错误:无效的授权规范来源:Microsoft OLE DB Provider for SQL Server系统:这些工作站在此服务器上具有打开文件的会话:什么是服务器名?我在哪里能找到它?凯恩的回答说明了数据来源、初始目录等。与您的有什么不同?这一个使用c#:连接字符串(“数据源=。\SQLEXPRESS;AttachDbFilename=F:\Test2.mdf;集成安全性=True;连接超时=30;用户实例=True”)。这里有什么有用的东西吗?服务器名称是您尝试连接到的SQL server实例。数据库名称是数据库的名称,而不是.mdf文件。如果您不知道它们是什么,请询问管理员。
Dim conn, sql
sql = "SELECT * FROM tblOutbox"
Set conn = CreateObject("ADODB.Connection")
With conn
      .Mode = adModeReadWrite
      .ConnectionString = "Provider=SQLOLEDB;server=[servername];database=[databasename]uid=[insertuser];pwd=[insertpassword];"
      .Open 
End With
If conn.State = adStateOpen Then
      WScript.Echo "Connection was established."
End If
conn.Close
Set conn = Nothing
Dim conn , rs, sql, ConnString
sql = "SELECT * FROM tblOutbox"
Set rs = CreateObject("ADODB.Recordset")
Set conn = CreateObject("ADODB.Connection")
With conn
      .Provider = "SQLNCLI"
      .Mode = adModeReadWrite
      .ConnectionString = "SERVER=.\SQLExpress;AttachDbFilename=F:\Test2.mdf;Database=Test2.mdf; Trusted_Connection=Yes;"
      .Open
      WScript.Echo "Connection was established."
End With
rs.Open sql,conn
If conn.State = adStateOpen Then
      WScript.Echo "Connection was established."
Else
  WScript.Echo "No Connection ."
End If
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing