Недавно я перенес базу данных с sql server 2005 на 2008 на windows server 2008. Клиенты нормально подключаются со своих машин XP, как и SQL Management Studio 2008. Я также протестировал удаленное соединение с помощью LINQPad, которое отлично работало.
Однако в моем приложении VB6 строка подключения, похоже, вызывает у меня проблемы. Есть идеи, что я делаю не так?
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"
заранее спасибо.
ОБНОВЛЕНИЕ: вот строка, которую я сгенерировал с помощью моего файла test.UL
[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 "; Начальный каталог = DB_App
Вот тот же файл UL, использующий собственный поставщик SQL:
"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 =" ""
- получено сообщение об ошибке: Ошибка в вызове Ado ... Произошла ошибка в Class_clasAdoFnx_initialize 3001 Аргументы имеют неправильный тип, находятся за пределами допустимого диапазона или конфликтуют друг с другом. --Ошибка: Class_clsAdoFnx_Initialize 3709 Запрошенная операция требует объект сеанса OLE DB, который не поддерживается текущим поставщиком.
попробовал [oledb] для опции поставщика сервера sql "Provider = SQLOLEDB.1; Password = mudslinger; Persist Security Info = True; User ID = admin; Initial Catalog = db_app; Data Source = net-brain"
ошибка: -2147217900 Ошибка входа для пользователя admin
ОБНОВЛЕНИЕ 2: после изоляции открытой строки подключения выясняется, что подключение открывается, а хранимая процедура, которую я использовал для тестирования, дает сбой.