|
|
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
В DAO у меня с этим нет проблемы. А вот в ADO что то не идет! Для быстрого перехода / поиска записи надо использовать индекс. метод seek. У меня что то не получается. Если можно приведите небольшой пример. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 08:47 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
Из Гетца Создание набора записей поддерживающего метод Seek Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 08:58 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
Ясно. Ну а дальше . rst.index="PrimaryKey" rst.seek "id='" & field.value &"'" Так ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 09:05 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
rst.seek "ляляля", adSeekFirstEq он ищет во всех полях составляющих индекс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 09:26 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
Во первых c:\WINDOWS\Help\ADO210.CHM - справка по ADO И некоторые подробности: метод Open объекта Table должен содержать adCmdTableDirect Ex: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. для поиска составным ключом используется такая конструкция: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 09:28 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
Ребята , спасибо, то что надо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 09:32 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
проверка после seek if rst.EOF then msgbox "нeту!" else msgbox rst.[field] end if ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 09:39 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
2 Alexander G В DAO есть свойство NoMatch, оно подсказывает результат поиска. А в ADO нужно выходит просто проверить rst.EOF. Кстати , а почему не rst.EOF=True ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 09:46 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
Обращаемся к свойству, оно вернет True или False Можно и =True, это нагляднее, но так короче. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 09:54 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
ADO 2.7 Library Пишет ошибку "Текущий проводник не поддерживает необходимый интерфейс для функции индекс". Что тут не так то? Dim conn As ADODB.Connection Dim rs As ADODB.Recordset Public DbFile As String Public Sub ConnectToDB() Set conn = New ADODB.Connection Set rs = New ADODB.Recordset db_file = App.Path + "\baza.mdb" With conn .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db_file .Mode = adModeReadWrite conn.Open End With With rs .ActiveConnection = conn .Source = "MyTable" .CursorType = adOpenKeyset .LockType = adLockOptimistic .CursorLocation = adUseServer .Open , , , , adCmdTableDirect .Index = "MyKey" End With End Sub Затыкается на .index ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 10:38 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
Где же ты? Alexander G ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 10:58 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
Только что проверил твой код для другой БД - всё работает. Вывод: проблема с базой данных, или с Jet ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 11:35 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
2 marvan Спасибо за проверку! Ой и ё! Что же делать? / Кстати это все в VB 6.0 / ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 11:44 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
попробуй заново установить mdac ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 11:59 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
2 marvan Все нашел ошибку. Вот так верно. И метод Seek заработал по индексу. Dim conn As ADODB.Connection Dim rs As ADODB.Recordset Public DbFile As String Public Sub ConnectToDB() ' Set conn = New ADODB.Connection Set rs = New ADODB.Recordset db_file = App.Path + "\baza.mdb" With conn .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db_file .Mode = adModeReadWrite conn.Open End With With rs .ActiveConnection = conn .Source = "MyTable" 'имя таблицы в базе .CursorType = adOpenKeyset .LockType = adLockOptimistic .CursorLocation = adUseServer .Open , , , , adCmdTableDirect .Index = "PrimaryKey" 'вот здесь ошибка была End With '--------------------------------------------- rs.Seek str(MyField.Text) '------------------------------------------------ MsgBox (rs(0)) End Sub Теперь на .index не затыкается. А кстати с каким mdac -ом встает Microsoft.Jet.OLEDB.4.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 12:08 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
А я ушел домой, дите кормить :) разница-то в 9 часовых поясов. Только сейчас из дома заглянул. Рад что все завершилось успешно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 12:23 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
"Microsoft.Jet.OLEDB.4.0" не менялся с версии 2.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 12:26 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
2 Alexander G Так у Вас сейчас вечер? Дитё это хорошо. Пусть растет большой и здоровый! 2 marvan Вот еще что заметил кое что. Если база в формате Access 2000 все пашет, а если в формате Access 97 затыкается. Пишет ошибку "Текущий проводник не поддерживает необходимый интерфейс для функции индекс". Ну это уже не имеет значения. Главное что работает под 2000. Насчет Jet 4.0 , я понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 12:33 |
|
||
|
ADO .Поиск записи. Как использовать seek ?
|
|||
|---|---|---|---|
|
#18+
Дык, в сведениях откуда - у меня соответствует. А дите - 11 класс :), куда расти ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2004, 13:14 |
|
||
|
|

start [/forum/topic.php?fid=45&fpage=1682&tid=1676690]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 215ms |
| total: | 335ms |

| 0 / 0 |
