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

Вниз

В DBGrid не отображается знаечние поля.   Найти похожие ветки 

 
Jane   (2004-01-02 18:23) [0]

Всем привет!
По какой причине в DBGrid не отображается содержимое текстовых полей. Т.е. у меня в моей БД (СУБД-MySql) есть поля.. разных типов. Так в DBGrid отображаются все значения полей.. кроме полей, имеющих тип text, вместо содрежимого он пишет: если нет значения (Memo); если же в поле чтот-то забито,т.е. есть значение есть, то (MEMO). С чем это может быть связано? и Как от этого избавиться? Т.Е. ЧТО делать??????


 
Дмитрий В. Белькевич   (2004-01-02 18:54) [1]

Никогда не работал с MySql, у неё поля типа text и blob/memo различаются? Если нет - тогда ищи грид, который мемо-поля может отбражать. Например, dbgrideh.


 
Jane   (2004-01-02 19:05) [2]

в Мускуле есьт поля и типа blob и типа text. Правда я не знаю что это знчит. я никогда не работала с типом blob и в чем его отличие. Самое что интересное что компонент TDBRichEdit видит знаечния этих полей. Мне просот необходимо чтобы визуально эот вес выглядела в виде таблицы. И не хотелось заморачиваться сильно. Нельзя ли как-нить в DBGrid все сделать?


 
Дмитрий В. Белькевич   (2004-01-02 19:26) [3]

Blob, он же memo - поле, содержащее данные произвольной длины.
Попробуй DBGridEh - он может memo поля отображать. Это, конечно, немного per rectum, но, вдруг поможет?


 
Jane   (2004-01-02 20:44) [4]

Ксожалению DBGridEh не помог. или я не смогла его правильно настроить. Что бы можно было бы еще придумать? не подскажете? Я просто не понимаю почему TDBRichEdit отображает значение. Принцип его работы..


 
Desdechado   (2004-01-03 13:41) [5]

text - это тип для хранения текста неизвестной заранее длины, поэтому в гриде вполне логично их не отображать. Можно (и обычно так и делают) рядом с гридом поставить DBMemo, который и будет показывать содержимое мемо-поля текущей записи.
Все сразу не рекомендуют фетчить (т.е. в гриде показывать), поскольку траффик может катастрофически возрастать.


 
denisch79   (2004-01-03 19:49) [6]

А латинский набор оотображается? У меня такое было пока не прописал русские кодировки сервере и на клиенте, но как это делал помню смутно


 
___Nikolay   (2004-01-04 08:32) [7]

Попробуй так:


procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect:
TRect;
Field: TField; State: TGridDrawState);
var
P: array [0..1023] of Char; { MemoField buffer }
BS: TBlobStream;
S: string;
begin
if Field is TMemoField then
with (Sender as TDBGrid).Canvas do
begin
{ Table1Notes is the TMemoField }
BS := TBlobStream.Create(Table1Notes, bmRead);
FillChar(P, SizeOf(P), #0);
BS.Read(P, SizeOf(P));
BS.Free;
S := StrPas(P);
{ remove carriage returns & line feeds }
while Pos(#13, S) > 0 do S[Pos(#13, S)] := " ";
while Pos(#10, S) > 0 do S[Pos(#10, S)] := " ";
{ clear the cell }
FillRect(Rect);
{ fill cell with memo data }
TextOut(Rect.Left, Rect.Top, S);
end;
end;



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

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

Наверх




Память: 0.46 MB
Время: 0.008 c
1-93451
ИМХО
2004-01-16 07:55
2004.01.29
Как оптимизировать работу с типизированным файлом?


1-93490
YuRock
2004-01-15 14:18
2004.01.29
Работа с потоками в Delphi с использованием VCL


6-93610
Sam Stone
2003-11-22 21:53
2004.01.29
ICQ


14-93633
Курящий
2004-01-08 17:30
2004.01.29
Курящим


1-93495
Татьяна
2004-01-19 13:46
2004.01.29
Размер ComboBox-а





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский