Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / отображение данных в TDBGrid из базы Постгрес / 2 сообщений из 2, страница 1 из 1
04.02.2015, 22:15:59
    #38871788
maxfox111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
отображение данных в TDBGrid из базы Постгрес
Добрый день,

Если можно подскажите (ткните носом ) где могу ошибаться, при отображении данных в TDBGrid из базы Постгрес. Используя компоненты ZEOS.

В базе постгреса есть таблица, с полями как приведено ниже.
CREATE TABLE fmbz_user.table_accountfio
(
id serial NOT NULL, -- автоинкрементное поле таблицы
id_accountidentifier numeric NOT NULL, -- Уникальный идентификатор сотрудника
id_lastname text, -- Фамилия сотрудника
id_firstname text, -- Имя сотрудника
id_middlename text, -- Отчество сотрудника
id_birthday text, -- день рождения сотрудника
id_center text, -- Центр в котором работает сотрудник
id_state text, -- состояние сотрудника (активен/в резерве)
id_specialist text, -- квалификация сотрудника как специалиста
id_manager text, -- квалификация сотрудника как менеджера
CONSTRAINT firstkey PRIMARY KEY (id_accountidentifier)
)

На форме,
ZConnection_Main : TZConnection;
ZQuery_Main : TZQuery;
DBGrid_MainForm_FIO : TDBGrid;
DataSource_Main : TDataSource;
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
//Устанавливаю свойства :
ZConnection_Main.HostName	:= tConnectionData.sHostName;
ZConnection_Main.Database	:= ‘FMBZ_Base’;
ZConnection_Main.User	:= ‘fmbz_user’;
ZConnection_Main.Password	:= ‘fmbz_user’;
ZConnection_Main.Protocol	:= ‘postgresql-9’;
ZConnection_Main.Port	:= 5432;
ZConnection_Main.LoginPrompt:= False;
ZConnection_Main.Properties.Add('codepage=win1251');
ZQuery_Main.Connection	:= ZConnection_Main;

//Производим подключение
ZConnection_Main.Connect;

// в дебагере видно что подключение произведено

//Очистка мета-данных
ZConnection_Main.DbcConnection.GetMetadata.ClearCache;
ZQuery_Main.SQL.Clear;

//создание SQL запроса
sSQLText:=	‘SELECT * FROM fmbz_user.Table_AccountFIO';

//Установка DataSource
DataSource_Main.DataSet:= ZQuery_Main;
DBGrid_MainForm_FIO.DataSource:= DataSource_Main;

//установка полей DBGrid
DBGrid_MainForm_FIO.Columns[0].FieldName	:='id_lastname';
DBGrid_MainForm_FIO.Columns[1].FieldName	:='id_firstname';
DBGrid_MainForm_FIO.Columns[2].FieldName	:='id_middlename';
DBGrid_MainForm_FIO.Columns[3].FieldName	:='id_BirthDay';
DBGrid_MainForm_FIO.Columns[4].FieldName	:='id_Center';
DBGrid_MainForm_FIO.Columns[5].FieldName	:='id_State';
DBGrid_MainForm_FIO.Columns[6].FieldName	:='id_Specialist';
DBGrid_MainForm_FIO.Columns[7].FieldName	:='id_Manager';
DBGrid_MainForm_FIO.Columns[8].FieldName	:='id_AccountIdentifier';

//Выполнение SQL запроса
ZQuery_Main.SQL.Text :=	sSQLText;
ZQuery_Main.Active	:= True;
ZQuery_Main.Open;


//В дебагере,при выполнении следующего цикла, видно
//что текстовые поля id_lastname и тд имеют правильные значения ФИО которые записаны в БД
for iQueryCnt:= 0 to ZQuery_Main.RecordCount - 1  do
Begin
	sSQLText:=ZQuery_Main.Fields.Fields[2].AsString;
	ZQuery_Main.Next;
End;


НО В результате
ВСЕ поля в DBGrid, за исключением поля 'id_AccountIdentifier', устанавливаются в значение “(MEMO)”
поля предназначенные для данных 'id_AccountIdentifier' показывают правильные значения
(открывал pgAdminIII и проверял)

В чем может быть моя ошибка?
...
Рейтинг: 0 / 0
05.02.2015, 07:58:02
    #38871873
rovan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
отображение данных в TDBGrid из базы Постгрес
maxfox111,

Если склероз мне не изменяет, нужно либо в настройках поля внутри датасета покопаться и пошаманить с длиной поля, либо вообще поля в датасете вручную создавать - нужного типа.
Вопрос, кстати, не имеет отношения к Postgresql, задайте его на форуме по Дэлфи.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / отображение данных в TDBGrid из базы Постгрес / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]