ZEOS+Postgres

Вопросы программирования и использования среды Lazarus.

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

Ответить
SeventhSon
новенький
Сообщения: 56
Зарегистрирован: 17.02.2009 00:57:17

ZEOS+Postgres

Сообщение SeventhSon »

Создаю простейшее приложение, подключающееся к базе данных.В базе одна таблица с полями типа дата,деньги и число с плавающей точкой.
Дату выводит в удобочитаемом формате а денежная сумма-0.Хотя в pgadmin р.12,34.Ручное добавление полей в dbgrid и указание маски вывода не помогает:(Подскажите как заставить dbgrid отображать данные в нужном мне формате
Аватара пользователя
grigoreo
постоялец
Сообщения: 195
Зарегистрирован: 10.03.2009 14:43:43
Откуда: С нашей Раши

Re: ZEOS+Postgres

Сообщение grigoreo »

последний раз когда сам смотрел формат денег Зеос их не выводил , поэтому плюнул и заменил просто дробью... А если так принципиально вывод буковок после самой суммы то в постгрэ есть тип под названием view сделай через него))
SeventhSon
новенький
Сообщения: 56
Зарегистрирован: 17.02.2009 00:57:17

Re: ZEOS+Postgres

Сообщение SeventhSon »

а какой тип лучше подходит?я только изучаю PG,пытаюсь добавить numeric но поле точность неактивно:(.сделать денежное поле double?глупо

о кажется нашёл выход.в numeric поле точноть было неактивно но я убрал галочку в разделе SQL и руками дописал numeric(10,2) [помогло знакомство с птичкой] теперь в dbgrid 123.45 отображается!
Аватара пользователя
WAYFARER
энтузиаст
Сообщения: 564
Зарегистрирован: 09.10.2009 00:00:04
Откуда: г. Курган
Контактная информация:

Re: ZEOS+Postgres

Сообщение WAYFARER »

SeventhSon
Версия Zeos?
grigoreo писал(а): то в постгрэ есть тип под названием view сделай через него))

Это не тип. Это представление), именованный запрос...
Хотя я вас кажется понял. Тогда уж использовать конкатенацию, например

Код: Выделить всё

select t.price || '  $' from table;
, но это не выход. Рекомендую обновить zeos до 7.
Ну или если хочется вьюху или не хочется сильно менять запрос в приложении:

Код: Выделить всё

create or replace view v_table as select t.price || '  $' from table
select * from v_table


Использовать нужно все таки для определенных данных предназначенные для этого типы, в обратном случае это может сказать на производительности(конечно не в вашем случае), или на точности вычислений, например.
Вообще
SeventhSon писал(а):а какой тип лучше подходит?я только изучаю PG,пытаюсь добавить numeric

numeric и используйте, и коли вы взялись изучать PostgreSQL я бы все таки рекомендовал его хорошенько изучить перед тем как начать использовать в работе.
SeventhSon
новенький
Сообщения: 56
Зарегистрирован: 17.02.2009 00:57:17

Re: ZEOS+Postgres

Сообщение SeventhSon »

ZEOS 7.0.0.
Аватара пользователя
grigoreo
постоялец
Сообщения: 195
Зарегистрирован: 10.03.2009 14:43:43
Откуда: С нашей Раши

Re: ZEOS+Postgres

Сообщение grigoreo »

SeventhSon писал(а):а какой тип лучше подходит?я только изучаю PG,пытаюсь добавить numeric но поле точность неактивно:(.сделать денежное поле double?глупо

о кажется нашёл выход.в numeric поле точноть было неактивно но я убрал галочку в разделе SQL и руками дописал numeric(10,2) [помогло знакомство с птичкой] теперь в dbgrid 123.45 отображается!


ну я использую double

Добавлено спустя 6 минут 3 секунды:
WAYFARER писал(а):
Это не тип. Это представление), именованный запрос...
Хотя я вас кажется понял. Тогда уж использовать конкатенацию, например

все в этом мире относительно но это именно он и есть ))

WAYFARER писал(а):но это не выход. Рекомендую обновить zeos до 7.

7ка до сих пор альфа, и работает не так стабильно как хотелось бы

WAYFARER писал(а): Использовать нужно все таки для определенных данных предназначенные для этого типы, в обратном случае это может сказать на производительности(конечно не в вашем случае), или на точности вычислений, например.

в данном случае проблем никаких ибо с точки зрения постгрэ денежный тип это интегер с запятой перед последними двумя знаками))
Ответить