Вверх ↑
Ответов: 2125
Рейтинг: 159
#1: 2008-10-31 21:07:07 ЛС | профиль | цитата
Во-первых не ConnectionTimeout, а CommandTimeout, а во-вторых, не надо передавать строку подключения, когда открываешь Recordset, надо туда открытый Connection передавать:

#bas
Set cn = CreateObject("ADODB.Connection")
cn.CommandTimeout = 280
cn.Open strDBopen

Set RS = CreateObject("ADODB.RecordSet")
RS.Open Data, cn, adOpenDynamic, adLockPessimistic
------------ Дoбавленo:

Ещё несколько замечаний:
1. зачем собирать все результаты в одну строку, а потом вытягивать по одной из StrList? Мало того, что скрипт при большом количестве операций с большими строками работает очень медленно, так ещё и лишние компоненты.
2. если в строке подключения используется DSN, значит это имя ODBC DSN, не проще ли использовать компонент ODBC в таком случае?
3. если не хочется иметь дело с ODBC, подключение должно выглядеть так:

#bas
cn.Open "Provider=SQLOLEDB;Initial Catalog=" + dbname + ";Data Source=" + dbdsn, dbuser, dbpass
карма: 1

0