Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.16;
Скачать: CL | DM;

Вниз

KOLEDB:MEMO поля   Найти похожие ветки 

 
Alec   (2005-02-11 12:11) [0]

Можно ли в KOLedb использовать MEMO- поля? Если да, то как? При использовании как обычные поля вылетает ошибка "Out memmory" при GetMem для буфера строки в DataFetch. Да и размер буфера дейтвительно агромадный.


 
thaddy   (2005-02-11 14:01) [1]

You should use coTaskMemAlloc and coTaskMemFree, not getmem/freemem (unless you use my commm.pas). It should be com marshalled memory.


 
Alec   (2005-02-11 14:10) [2]

I use KOLedb and I don"t want change it, because future update by Kladov.


 
Alec   (2005-02-11 14:11) [3]

I use KOLedb and I don"t want change it, because future update by Kladov.


 
ECM ©   (2005-02-11 14:30) [4]

Приведи код ...
С какой структурой таблиц(ы) работаешь?
Сколько записей в таблице?


 
Alec   (2005-02-11 15:08) [5]

Код
       if dts = Nil then
         dts:=NewDataSource(CNN_STR +cnn_pth + cnn_fil);
       if cnn = nil then
        cnn:=NewSession(dts);
        rst:=NewQuery(cnn);
        rst.Text:="select * from cats";
        rst.Open; //<-- Тут ошибка Out of memmory

Таблица cats (MS Access)

ID counter
cat Text(255)
val Memo

Записей 1-10 (пока)
Трассирую по исходникам и в момент Getmem для буфера одной (очевидно первой) записи ошибка и вылетает.


 
ECM ©   (2005-02-11 15:28) [6]

Посмотри какие параметры получаются на входе AllocMem в TQuery.Open...?
Если это не натолкнет на причину - зашли мне на мыло минимальный
проект(лишь бы эффект проявлялся)+таблицу


 
Alec   (2005-02-11 16:02) [7]

Open проходит полностью, в конце вызывается First из него Next, и уже в нем в FatchData есть GetMem( Buffer, fRowSize );
И fRowSize=0x2FFB124 и на нем возникает ошибка.
Кстати попробовал пустой проект - читается ентот MEMO.


 
Alec   (2005-02-11 16:12) [8]

Может проблема в том, что это все работает внутри dll. Вернее внутри DLL не работает, а просто EXE работает.


 
Alec   (2005-02-11 16:17) [9]

Почему-то в отдельном проекте fRowSize несколько тысяч, а на той же базе внутри моей DLL миллионы.


 
Alec   (2005-02-11 16:48) [10]

Не тож миллионы.


 
Alec   (2005-02-11 16:51) [11]

fRowSize=1073742876



Страницы: 1 вся ветка

Текущий архив: 2005.10.16;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.049 c
1-1127470767
alpine
2005-09-23 14:19
2005.10.16
Как программно скопировать папку в другу директорию ?


1-1127427995
sashok
2005-09-23 02:26
2005.10.16
Val(ReadOut.Text, op1, Code);


2-1127123367
Wolferio
2005-09-19 13:49
2005.10.16
Как удалить файл


3-1125486792
dreamse
2005-08-31 15:13
2005.10.16
Как установить права доступа к таблицам у пользователя ?


1-1127741789
yanker
2005-09-26 17:36
2005.10.16
Управление процессом