Вопрос по RDO

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
MOV
Постоялец
Постоялец
 
Сообщения: 414
Зарегистрирован: 13.03.2004 (Сб) 15:13
Откуда: Санкт-Петербург

Вопрос по RDO

Сообщение MOV » 07.04.2004 (Ср) 9:16

Когда пробовал работать с DAO все было хорошо. Он по индексному полю, довольно быстро делает выборку, но DAO не подошло, т.к. через него не обновляются поля (работа через ODBC, похоже там какое-то несогласование).
Так вот, а в RDO, думаю, должно быть нормально (с обновлением), но он очень медленно ищет делает выборку, даже по индексному полю, может ему надо как-то указать, чтобы он использовал индексы?
В MSDN-онлайн смотрел, но там что-то ничего такого. Похоже, пора покупать книгу по БД. :blink

MOV
Постоялец
Постоялец
 
Сообщения: 414
Зарегистрирован: 13.03.2004 (Сб) 15:13
Откуда: Санкт-Петербург

Сообщение MOV » 07.04.2004 (Ср) 9:29

Это кусок кода

Dim cn As New rdoConnection

Private Sub Command1_Click()
Set cn = New rdoConnection
With cn
.Connect = "DSN=SAM_ALL_DEMO32"
.EstablishConnection
End With

Dim rs As rdoResultset
Dim Sql As String
Debug.Print Str(Time)
Sql = "SELECT 'Doc Key' from IR61BLIN IR Details where 'doc key'='11 28865'"
Set rs = cn.OpenResultset(Sql, rdOpenKeyset, 3)
Debug.Print Str(Time)

rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
End Sub

Пробовал ставить cn.CursorDriver = rdUseOdbc, но он ругается, мол свойство только для чтения :shock:

MOV
Постоялец
Постоялец
 
Сообщения: 414
Зарегистрирован: 13.03.2004 (Сб) 15:13
Откуда: Санкт-Петербург

Сообщение MOV » 07.04.2004 (Ср) 9:39

А нет. Вставил таки cn.CursorDriver = rdUseOdbc (в With Сn там не стал ругаться, хотя и сначала там ставил, но в конце with, а если поставить сначала не ругается, странно, Cn ведь еще не открыта).
Но он все равно медленно открывает SQL запрос. Ни Find, ни Filter, ничего нет B) , что за ерунда? Как быстрее работать?

MOV
Постоялец
Постоялец
 
Сообщения: 414
Зарегистрирован: 13.03.2004 (Сб) 15:13
Откуда: Санкт-Петербург

Сообщение MOV » 07.04.2004 (Ср) 16:44

или хотя бы инфа по RDO может у кого есть? :shock:
а то я что-то совсем плохой - даже запись то прочитать не могу.

Scuder
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 334
Зарегистрирован: 17.08.2002 (Сб) 13:18
Откуда: Moscow, Russia

Сообщение Scuder » 09.04.2004 (Пт) 20:31

Круто ты сам с собой пообщался.. Рейтинг поднимаешь? ;-)

...но DAO не подошло, т.к. через него не обновляются поля (работа через ODBC, похоже там какое-то несогласование).


Ты не мог бы пояснить, что за поля и как именно они не обновляются?

MOV
Постоялец
Постоялец
 
Сообщения: 414
Зарегистрирован: 13.03.2004 (Сб) 15:13
Откуда: Санкт-Петербург

Сообщение MOV » 21.04.2004 (Ср) 19:13

Да. Тему можно закрыть, т.к. c ADO все-таки получилось там надо было работать не с рекордсетом и его фильтром, а открывать таблицы SQL-запросом, так работает несравнимо быстрее, почти мгновенно, даже через ODBC. Раньше так не получалось (с SQL запросами), т.к. у запроса нестандартный синтаксис (ну для этого ODBC :shock: , если бы не подсказали еще долго бы мучился, спасибо, мир не без добрых людей).


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

    TopList  
cron