|
|
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
Set cMdbProf = New Adodb.Connection Set comMdbProf = New Adodb.Command Set MdbProf = New Adodb.Recordset Set MdbErr = cMdbProf.Errors cMdbProf.CursorLocation = adUseClient cMdbProf.Mode = adModeReadWrite cMdbProf.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\w\PD.mdb;Persist Security Info=False") MdbProf.Open "select * from pr_of",cMdbProf, adOpenDynamic, adLockPessimistic, 1 Как только выполняется следующая команда (Ms DataGrid Control 6.0(SP6): Set DataGrid1.DataSource = MdbProf в MdbErr добавляется строка ошибки: description "интерфейс не поддерживается" helpcontext 1240640 NativeError -2147467262 number -2147467262 source "Provider" sqlstate "" таблица pr_of имеет индексы индекс поле сортировка id_obj id_obj по возрастанию не ключ;не уник.;нельзя пусто PrimaryKey nom_reg_vi по возрастанию ключ;уник;нельзя пусто id_predpr по возрастанию id_ik по возрастанию id_obj по возрастанию UNO UNO по возрастанию не ключ;уник.;нельзя пусто Мне подсказали - "была такая ситуация при нескольких установленных версиях MDAC. что-там путалось при создании объектов. это лучше выяснить в форуме VB - там плотнее занимаются ADODB" Кто чего знает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2004, 14:23:23 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
а причем здесь Jet? конекшн создался? рекордсет открылся? мавр сделал свое дело, мавр может курить бамбук с датагридом разбирайтесь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2004, 14:33:02 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
тем более что датагрид в качестве датасорса нифига не ADODB.Recordset принимает (если меня кнопка Ф2 не обманывает) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2004, 14:37:15 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
и конекшн создался и рекордсет открылся и даже в гриде отображаются данные, а объекте err все равно появляется item c индексом 1 и содержит описание, которое привел - в нем же ясно кто отвечает - провайдер, а здесь он Microsoft.Jet.OLEDB.4.0. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2004, 14:50:59 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
Вполне может быть, что провайдеру не нравится сочетание параметров adOpenDynamic, adLockPessimistic и "1". Попробуй просто опустить эти параметры. Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2004, 12:13:14 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
DankovВполне может быть, что провайдеру не нравится сочетание параметров гм.. а чего ж он тогда рекордсет открывает-то? могло бы быть, что грид не умеет отобразить рекордсет, открытый с такими параметрами, но автор утверждает, что все даже отображается. я бы посоветовал для начала 8-ой сервис-пак на джет поставить, да mdac 2.8 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2004, 18:19:00 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
Если комбинация параметров не поддерживается провайдером то рекордсет открывается с дефолтными. Собственно adUseClient и adOpenDynamic - комбинация невозможная в принципе. Динамический курсор возможен только на сервере. Magnus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2004, 18:24:45 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
Блин, позор на мою седую голову. Все проспал. Динамических курсоров в Jet-е нет и быть не может. А adUseClient для джетовского соединения смысл имеет, но приводит только к дополнительным расходам памяти, и ни к чему больше. Magnus23Если комбинация параметров не поддерживается провайдером то рекордсет открывается с дефолтными. неверное утверждение. для ADODB.Recordset дефолтный тип курсора - ForwardOnly, а попытка открыть Dynamic-рекордсет на джетовской базе приводит к открытию Static-рекордсета. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2004, 20:04:03 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
Не знаю на счет джета, но если склероз не подводит, то с сиквелом он по дефоту открывается как статик. Magnus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2004, 21:56:29 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
Magnus23Не знаю на счет джета, но если склероз не подводит, то с сиквелом он по дефоту открывается как статик. хелп Syntax recordset.Open Source, ActiveConnection, CursorType, LockType, Options ............... CursorType Optional. A CursorTypeEnum value that determines the type of cursor that the provider should use when opening the Recordset. The default value is adOpenForwardOnly . Открытие рекордсета через Command.Execute или через Connection.Execute тоже приводит к открытию Forward-Only рекордсета. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2004, 22:28:39 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
ЛП, не расстраивай мою больную психику плиз :). Только что 5 раз проверил. С теми параметрами что указаны в начальном посте, открывается с adOpenStatic, adUseClientBatch. Согласен, по дефолту будет форвард-онли(позор на мои седины, посыпаю голову пеплом), но т.к. в соеденении указан статик, то он и используется. Magnus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 16:05:50 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
Лох Позорный Magnus23Если комбинация параметров не поддерживается провайдером то рекордсет открывается с дефолтными. неверное утверждение. для ADODB.Recordset дефолтный тип курсора - ForwardOnly, а попытка открыть Dynamic-рекордсет на джетовской базе приводит к открытию Static-рекордсета. Неверное утверждение :). См.выше. Если в соеденении не указывать статик, то получим форвард онли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2004, 16:08:13 |
|
||
|
Подскажите - чего не хватает Jet-у.
|
|||
|---|---|---|---|
|
#18+
и adOpenStatic и т.д. пробовал, и mdac 2.8 стоит, и jet 8 стоит. Всяко было пробовано! MdbErr чистый(можно довавлять, удавлять и тп. и тд.) пока grid не билдим. Как только билдим в MdbErr добавляется строка ошибки, хотя прога работает(не стопает на ошибку как в других случаях, когда по "интерфейс не поддерживается" прога ост. - например с "Microsoft Visual FoxPro Driver" и методом seek). Есть один момент по работает без сбоя на w2k, на w98se после обработки некоторого кол-ва(разного) записей на какой останавливается(не зависает), переходит в режим ожидания чего-то. На работоспособность других работающих и запускаемых программ не влияет. Т.е. вопрос и состоит в том, что запрашивает Ms DataGrid Control 6.0(SP6) :через ADO(параметры) у провайдера, и как сделать чтобы не запрашивал(заменить грид на другой?). Да VB 6 (SP6) соответственно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2004, 08:45:11 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=32741594&tid=2168719]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
66ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 399ms |

| 0 / 0 |
