简体   繁体   English

vb6到sql server 2008的ADODB连接字符串

[英]vb6 ADODB connection string to sql server 2008

I recently migrated a database from sql server 2005 to 2008 on windows server 2008. Clients connect fine from their XP machines and so does the SQL Management Studio 2008. I have also tested a remote connection using LINQPad which worked fine. 我最近在Windows Server 2008上将数据库从sql server 2005迁移到了2008.客户端从他们的XP机器连接得很好,SQL Management Studio 2008也是如此。我还测试了使用LINQPad的远程连接。

However on my VB6 app, the connection string seems to give me problems. 但是在我的VB6应用程序中,连接字符串似乎给我带来了问题。 Any ideas what I'm doing wrong? 我有什么想法我做错了吗?

    Dim strUserName As String
     Dim strPassword As String
     Dim sProc As String

     sProc = "Class_clsAdoFnx_Initialize"

        Me.DatabaseName = "db_app"




 'Connect to SQL Server

    strUserName = "admin"
    strPassword = "mudslinger"

    Set cSQLConn = New ADODB.Connection
    '**Original connection String
    'cSQLConn.CommandTimeout = 0
    'cSQLConn.ConnectionString = " PROVIDER=SQLOLEDB" & _
    '    ";SERVER=NET-BRAIN" & _
    '    ";UID=" & strUserName & _
    '    ";PWD=" & strPassword & _
    '    ";DATABASE=" & Me.DatabaseName

    '***First attempt, no dice
    'cSQLConn.ConnectionString = "Provider=sqloledb;" & _
    '       "Data Source=NET-BRAIN;" & _
    '       "Initial Catalog=DB_APP;" & _
    '       "User Id=admin;" & _
    '       "Password=mudslinger"
    'cSQLConn.Open

    '***3rd attempt, no dice 
    cSQLConn.Open "Provider=sqloledb;" & _
           "Data Source=NET-BRAIN;" & _
           "Initial Catalog=db_app;" & _
           "User Id=admin;" & _
           "Password=mudslinger", "admin", "mudslinger"

thanks in advance. 提前致谢。

UPDATE: Here is the string I generated using my test.UL file 更新:这是我使用test.UL文件生成的字符串

[ODBC] Provider [ODBC]提供者

Provider=MSDASQL.1;Password=logmein;Persist Security Info=True;User ID=sa;Extended Properties="DSN=NET-BRAIN;UID=admin;PWD=mudslinger;APP=Microsoft® Windows® Operating System;WSID=BPOOR-16D68FBC7D;DATABASE=DB_App;Network=DBMSSOCN";Initial Catalog=DB_App Provider = MSDASQL.1; Password = logmein; Persist Security Info = True; User ID = sa; Extended Properties =“DSN = NET-BRAIN; UID = admin; PWD = mudslinger; APP =Microsoft®Windows®操作系统; WSID = BPOOR-16D68FBC7D; DATABASE = DB_App;网络= DBMSSOCN“;初始目录= DB_App

Here is the same UL file using the SQL Native provider : 以下是使用SQL Native提供程序的相同UL文件:

"Provider=SQLNCLI10.1;Integrated Security="";Persist Security Info=False;User ID=admin;Initial Catalog=DB_APP;Data Source=NET-BRAIN;Initial File Name="";Server SPN=""" “Provider = SQLNCLI10.1; Integrated Security =”“; Persist Security Info = False; User ID = admin; Initial Catalog = DB_APP; Data Source = NET-BRAIN; Initial File Name =”“; Server SPN =”“”

--received the error: Error in Ado Call... There was an error in Class_clasAdoFnx_initialize 3001 Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another. - 接收错误:Ado Call中的错误... Class_clasAdoFnx_initialize 3001中存在错误类型错误,超出可接受范围或彼此冲突。 --Error: Class_clsAdoFnx_Initialize 3709 Requested operation requires an OLE DB Session object, which is not supported by current provider. --Error:Class_clsAdoFnx_Initialize 3709请求的操作需要OLE DB Session对象,当前提供程序不支持该对象。

tried [oledb] for sql server provider option "Provider=SQLOLEDB.1;Password=mudslinger;Persist Security Info=True;User ID=admin;Initial Catalog=db_app;Data Source=net-brain" 试过[oledb] for sql server provider选项 “Provider = SQLOLEDB.1; Password = mudslinger; Persist Security Info = True; User ID = admin; Initial Catalog = db_app; Data Source = net-brain”

error: -2147217900 Login failed for user 'admin' 错误:-2147217900用户'admin'登录失败

UPDATE2 : After isolating the open connection string, it turns out the connection is opening and the stored procedure I was using to test with was failing. UPDATE2:隔离打开的连接字符串后,结果是连接打开,我用来测试的存储过程失败了。

Following Using ADO with SQL Server Native Client to enable the usage of SQL Server Native Client, ADO applications will need to implement the following keywords in their connection strings: 将ADO与SQL Server Native Client一起使用以启用SQL Server Native Client的使用之后,ADO应用程序将需要在其连接字符串中实现以下关键字:

Provider=SQLNCLI10 供应商= SQLNCLI10
DataTypeCompatibility=80 DataTypeCompatibility = 80

Dim con As New ADODB.Connection

con.ConnectionString = "Provider=SQLNCLI10;" _
         & "SERVER=NET-BRAIN;" _
         & "Database=DB_APP;" _ 
         & "DataTypeCompatibility=80;" _
         & "User Id=admin;" _
         & "Password=mudslinger;"

con.Open

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM