[Решено] PostgresQL поле типа text

Модератор: Модераторы

[Решено] PostgresQL поле типа text

Сообщение resident » 09.11.2015 19:26:43

Мне нужно поле в Postgre с 2000+ символов. Создал его как text.
Создаю в Lazarus объект - статическое поле для него. Lazarus его сделал как TMemoField. Этож BLOB?
В контролах показывает вместо нужного текста надпись "(MEMO)".
Подскажите как бы добраться до текста в базе, чтоб и читать и править?
Последний раз редактировалось resident 14.11.2015 18:07:22, всего редактировалось 1 раз.
resident
энтузиаст
 
Сообщения: 605
Зарегистрирован: 13.03.2013 16:58:51

Re: PostgresQL поле типа text

Сообщение WAYFARER » 09.11.2015 21:06:40

Для вывода и редактирования таких полей используется TDBMemo.
Для того что бы показать поле в DBGrid можно сделать так:
Код: Выделить всё
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
  if Assigned(Column) then
  begin
   (Sender as TDBGrid).Canvas.FillRect(Rect);
   (Sender as TDBGrid).Canvas.TextRect(Rect, Rect.Left, Rect.Top, ' '+Column.Field.AsString);
  end;
end;           


Добавлено спустя 19 секунд:
http://www.freepascal.ru/forum/viewtopic.php?f=5&t=5112
Аватара пользователя
WAYFARER
энтузиаст
 
Сообщения: 517
Зарегистрирован: 09.10.2009 00:00:04
Откуда: г. Курган

Re: PostgresQL поле типа text

Сообщение resident » 09.11.2015 22:39:35

Благодарю.

з.ы. Для эксперимента пока забросил text и переделал поля на varchar.
Вроде работает.
resident
энтузиаст
 
Сообщения: 605
Зарегистрирован: 13.03.2013 16:58:51

Re: PostgresQL поле типа text

Сообщение alexs » 10.11.2015 09:05:24

Можно просто явное преобразование типа дать
Код: Выделить всё
cast(aaa as varchar(2000))
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4053
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6

Рейтинг@Mail.ru