Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.10.31;
Скачать: [xml.tar.bz2];

Вниз

Ошибка   Найти похожие ветки 

 
stur   (2002-10-09 16:40) [0]

Уважаемые Мастера подскажите.
DBGrid подключен к базе через Query. Для преобразования типа поля используется следующий код. Проблема в следующем при просмотре базы данных назад через вполне определённое число строк вылетает ошибка "Invalid BLOB handle in record buffer" виной всему строка Query1.FieldByName ("EmpChar1_05").AsString);. Почему то теряется взаимосвязь. Как от этого избавиться?

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if Column.Field.FieldName="EMPCHAR1_05" then
begin
DBGrid1.Canvas.FillRect(Rect);
DBGrid1.Canvas.TextOut Rect.Left+1,Rect.Top+2, Query1.FieldByName ("EmpChar1_05").AsString);
end;
end;


 
stur   (2002-10-09 16:46) [1]

Если же подключаться к базе через TTable, то этой проблемы нет. Так подключаться не совсем корректно...


 
Johnny Smith   (2002-10-09 16:48) [2]

Какой тип у поля "EMPCHAR1_05"?


 
stur   (2002-10-09 16:49) [3]

VARCHAR(256)


 
Johnny Smith   (2002-10-09 17:30) [4]

Тут уже говорилось о том, что BDE принимает VarChar"овские типы длиной более 255 байт как BLOB. Соответственно, как мне кажется, он и пытается читать его как BLOB, то есть передавая для него ссылку на некий буфер, а не на переменную строкового типа. Отсюда и причина падения.
Мой совет - уйти с BDE на другую библиотеку доступа к данным.


 
stur   (2002-10-09 17:40) [5]

Возможно, но....
Почему всё работает при просмотре базы вперёд?
И всё нормально работает если использовать не TQuery( select * from EMP), а TTable ?


 
Johnny Smith   (2002-10-09 17:56) [6]

2stur © (09.10.02 17:40)
Честно сказать? Фиг его знает. Надо смотреть исходники BDE :^)))


 
petr_v_a   (2002-10-09 18:58) [7]

В настройках алиаса надо увеличить параметр BLOBS_TO_CACHE



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

Форум: "Базы";
Текущий архив: 2002.10.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.014 c
3-101062
Velzevul
2002-10-12 16:23
2002.10.31
Использование компонента Table в цикле


4-101587
miDDTrich
2002-09-16 14:47
2002.10.31
Как рисовать рядом с эл-том ListView/TreeView с помощью WinAPI?


1-101330
Gamer
2002-10-20 16:01
2002.10.31
Объектно-ориентированное программирование


1-101222
Weare
2002-10-21 18:42
2002.10.31
Как узнать текущую директорию


4-101571
igornov
2002-09-11 17:50
2002.10.31
Как получить % загрузки процесора конкретным приложением?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский