Форум: "KOL";
Текущий архив: 2005.07.31;
Скачать: [xml.tar.bz2];
ВнизKOLEDB: OLE DB error Найти похожие ветки
← →
AlexandrK (2004-12-28 13:09) [0]WIN"XP SP1, D6, MS SQL Server
Был у меня KOLEDB от 14.14.2001, таблицы открывались...
если в тексте стоял вызов процедуры, которая возвращала набор строк,
то командой QR.Open ничего не возвращалось :-(
поставил KOLEDB от 23.08.2004, теперь при попытке сделать Open
возвращается OLEDB error 80040E21, если возвращаю старую версию, то таблицы открываются.
В чем дело, не понимаю...
← →
ECM © (2004-12-28 13:23) [1]Может это тебе поможет и натолкнет на какую-то мысль :)
DB_E_DATAFIELD_OVERFLOW 80040E21 OLE DB Specific:
The field is too small to accept the amount of data you attempted to add. Try inserting or pasting less data.
← →
AlexandrK (2004-12-28 15:49) [2]Может и натолкнет, но, видимо, позже :(...
А вот еще есть
OLE DB error 80040E05 -
это при попытке вызвать NewSession,
(как указано в комментарии Modified by ECM !!!)
Как только убираешь все про Unk, NewSession вызывается без проблем
← →
ECM © (2004-12-28 16:11) [3]Все мои правки в KOLEdb я делал для обеспечения ручного управления транзакциями(AutoCommit=FALSE), когда пытался работать с InterBase через OLE DB(IBProvider)... Потом я это дело забросил и слепил KOLIBdb.
К сожалению посмотреть на MS SQL у меня нет возможности...
Прошагай NewSession - где конкретно выпадает. Возможно при работе с M$ SQL нет возможности использовать интерфейс управления транзакциями в том виде как я его слепил.
В крайнем случае вынеси все что я добавил
function StartTransaction(isoLevel: Integer): HRESULT;
function Commit(Retaining: BOOL): HRESULT;
function Rollback(Retaining: BOOL): HRESULT;
function Active: Boolean;
в условную компиляцию...{$IFNDEF IBPROVIDER}
← →
AlexandrK (2004-12-28 16:13) [4]И вот что еще нашел
если пишу QR.Text:="SELECT CODE,RTRIM(DESCR),IDORDER FROM SC84DIR ORDER BY 3" вылезает ошибка 80040E21,
если QR.Text:="SELECT CODE,RTRIM(DESCR),IDORDER FROM SC84DIR"
все отрабатывает.
← →
AlexandrK (2004-12-28 16:17) [5]Как я понял, эта ошибка 80040E21 должна вылезать, если данные, которые я добавляю больше, чем размер поля, но я НИЧЕГО НЕ ДОБАВЛЯЮ!!!
Я вызываю QR.Open
← →
ECM © (2004-12-28 16:33) [6]2AlexandrK
Сорри - я похоже тебя дезинформировал по-поводу 80040e21 -
это была инфа от ADO для WinCE
Если есть возможность поищи в MSDN "80040e21" - там много полезного...:)
← →
ECM © (2004-12-28 16:39) [7]Похоже это достаточно "абстрактная" ошибка...:)
Я в МСДН нашел уже штук пять разных ее расшифровок
← →
ECM © (2004-12-28 16:57) [8]http://www.adopenstatic.com/faq/80040e21.asp
← →
AlexandrK (2004-12-28 17:09) [9]Я обошел ЭТУ ошибку так -
закоментарил все что касается
if Mode = rmReadOnly ... if Mode = rmUpdateDelayed
Теперь могу получить выборку, НО -
некоторые столбцы не выдают последний символ :(
и еще - по команде Open, если QR.Text:="NameStoredProc", которая должна возвращать набор строк выдается другая ошибка. Вот такая
Exception EAccessViolation in module oledb32.dll at 00007DE9
Access violation ad address 1F8A7DE9 in module "oledb32.dll".
Write of address 80088D495
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2005.07.31;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.04 c