Форум: "Базы";
Текущий архив: 2005.01.02;
Скачать: [xml.tar.bz2];
ВнизADO+MSAccess. Длинный запрос Найти похожие ветки
← →
msguns © (2004-12-02 13:12) [0]Есть длинный запрос (в смысле многосимвольный). Вылетает по AV в модуле OLEAUT32.dll
Сокращаю кол-во полей, участвующих в запросе - все Ok
В чем дело, подскажите, пожалуйста.
На всякий случай текст запроса (выполняю ADOCommand)INSERT INTO Fonds ( FID, ArcID, Country, Letter, FondNumber, FondType, Category, StartDate, EndDate, FondSize, DontInvent, Microfished, Secret, Availability, PassTo, PassLetter, PassNumber, JoinLetter, JoinNumber )
SELECT IID, ArcID, Country, Letter, FondNumber, FondType, Category, SDate, EDate, FSize, QDI, QMF, QS, Avl, PassT, PassL, PassN, JoinL, JoinN
FROM F IN "e:\DMsArch\FondsCmp\ReplDB\repdb.mdb";
В аксесе пролетает на ура.
Стоит убрать из запроса 7 последних полей - катит и в джете.
← →
msguns © (2004-12-02 15:44) [1]Разобрался, блиииииииииииннннн !
Дааа, ну акцес (джет ?) это вааще.
Дело, как и подозревалось, не в кол-ве символов, а в хитростях работы джета с атоинкрементыми первичными ключами.
В общем, так не проходит:
1. DELETE FROM TABLE
2. INSERT INTO TABLE ... SELECT ... FROM ... IN <Path>
А так за милую душу:
1. DELETE FROM TABLE
2. INSERT INTO TABLE ID VALUES(1)
3. DELETE FROM TABLE WHERE ID=1
4. INSERT INTO TABLE ... SELECT ... FROM ... IN <Path>
Что это за фигня такая ? Нет желающих прокомментировать ?
ЗЫ. При пуске запросов непосредственно из аксеса никакие промежуточные фрикции не требуются ;)
← →
sniknik © (2004-12-02 16:12) [2]> Что это за фигня такая ? Нет желающих прокомментировать ?
пришлю программу провериш в ней? после (если подтвердится) вышлеш базы с выделенным глюком (перой используемых таблиц)?
после возможно дойдет и до коментариев. ;о)))
а пока проверь так.
1. DELETE FROM TABLE
2. 3. sleep(5000); (в дельфях не в запросе)
4. INSERT INTO TABLE ... SELECT ... FROM ... IN <Path>
← →
msguns © (2004-12-02 16:54) [3]>sniknik © (02.12.04 16:12) [2]
Причем тут пауза ? Я запросы тупо запускал из сиквел-эксплорера.
Паузы были минут по 10-15 (ходил курить и думать)
Да и приложение мое тоже не причем.
Более того. После AV в эксплорере я его переоткрывал, после чего переоткрывал базу. Так вот, после переоткрытия и начиналась вся эта хрень. Стоило мне вставить-удалить суррогатный рекорд и пожалуйста: девочка моя ! Хоть сверху, хоть сбоку, хоть кверхногами: любые запросы пролетают как фанеры над Парижем. Затем дисконнект+коннект и опять без суррогата никаким манером не хочить. Вот так-то..
← →
sniknik © (2004-12-02 23:35) [4]вот это и предлогал проверить. ну нет так нет.
а пока у тебя все уровне чуда, бездоказательно но предлагаеш верить... только потому что сам видел, а я не видел верить трудно.
кстати что за "сиквел-эксплорер" для аксесс базы, откуда?
← →
msguns © (2004-12-03 10:26) [5]>sniknik © (02.12.04 23:35) [4]
>кстати что за "сиквел-эксплорер" для аксесс базы, откуда?
Из "джентльменского" набора от Борланда (D6 vr.Ent)
Работает не только с аксесом, типа универсальный.
Удобен при отладке запросов. Правда, трошки глючен, но кто не без греха ?
← →
Erik1 © (2004-12-03 12:34) [6]Вобщето надо проверять такие вещи непосредственно под MsJet, а не через ADO гонять. Создать такой запрос в MsAccess и выполнить из delphi через компонент TADOStoredProc или нативный из Diamond. И непредлагать для проверки какойто глючный "сиквел-эксплорер".
← →
sniknik © (2004-12-03 21:45) [7]> Из "джентльменского" набора от Борланда (D6 vr.Ent)
не нашол такого... (D7 vr.Ent)
если только ты имееш ввиду SQL Explorer... ну так причем здесь jet и ADO[Command]? он под BDE работает, через свой драйвер, или если через DSN ODBC то всеодно пара лишних посредников в связке (ODBC и BDE).
> ... непосредственно под MsJet, а не через ADO гонять.
c ADO то как раз jet нормально работает, подобных глюков и на больших запросах не замечал.
> И непредлагать для проверки какойто глючный "сиквел-эксплорер".
правильно, я вот как раз предлагал проверить в своей программе в которой уверен (и которая точно ADO+Jet/любой OLE DB провайдер).
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.01.02;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.034 c