Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Возврат данных из пустой таблицы / 4 сообщений из 4, страница 1 из 1
14.02.2007, 13:58
    #34330307
Aries
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возврат данных из пустой таблицы
Решил вынести вопрос в отдельную тему.

Есть табличка tTest с ней два поля.

Есть ХП, которая просто делает селект. Это я пока учусь работать с Постгрис.
Данные на клиента тяну через ODBC. В настройках ОДБЦ все по умолчанию.

В табличке нет ни одной записи, пустая.
Вызываю ХП и мне возвращается результат с одной строкой, значения
которой равны NULL Это не есть хорошо, это есть очень плохо.
Подозреваю что это можно очень просто решить.

PS Поиск по форуму пока ничего не дал.

Истина где-то там...
...
Рейтинг: 0 / 0
14.02.2007, 14:11
    #34330373
Serik Akhmetov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возврат данных из пустой таблицы
версия сервера
структура таблицы
код процедуры
текст запроса
...
Рейтинг: 0 / 0
14.02.2007, 14:15
    #34330388
Aries
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возврат данных из пустой таблицы
Версия PostgreSQL 8.1.2
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
-- Table: "tTest"

-- DROP TABLE "tTest";

CREATE TABLE "tTest"
(
  "iIndex" character( 32 ) NOT NULL DEFAULT ''::bpchar,
  "cName" character varying( 254 ) NOT NULL DEFAULT ''::character varying
) 
WITHOUT OIDS;
ALTER TABLE "tTest" OWNER TO postgres;
GRANT ALL ON TABLE "tTest" TO postgres;
////////////////////////////////////////////////////////////////////////////////////////////////
-- Function: "pTest"(OUT iindex bpchar, OUT cname character varying)

-- DROP FUNCTION "pTest"(OUT iindex bpchar, OUT cname character varying);

CREATE OR REPLACE FUNCTION "pTest"(OUT iindex bpchar, OUT cname character varying) AS
$BODY$SELECT "iIndex", "cName"
  FROM "tTest";$BODY$
  LANGUAGE 'sql' VOLATILE STRICT;
ALTER FUNCTION "pTest"(OUT iindex bpchar, OUT cname character varying) OWNER TO postgres;
GRANT EXECUTE ON FUNCTION "pTest"(OUT iindex bpchar, OUT cname character varying) TO public;
GRANT EXECUTE ON FUNCTION "pTest"(OUT iindex bpchar, OUT cname character varying) TO postgres;
Вот вызов из VFP
Код: plaintext
1.
2.
3.
? SQLCONNECT("tests")
? SQLEXEC( 1 ,'select * from "pTest"()',"aaa")
? SQLDISCONNECT( 1 )

Возвращается в фокс курсор с одной записью, хотя строк то и нет.


Истина где-то там...
...
Рейтинг: 0 / 0
14.02.2007, 14:56
    #34330578
ZemA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возврат данных из пустой таблицы
а если так?
Код: plaintext
1.
2.
3.
4.
5.
6.
CREATE OR REPLACE FUNCTION "pTest"(OUT iindex bpchar, OUT cname character varying)
  returns record AS
$BODY$
SELECT "iIndex", "cName"
  FROM "tTest";
$BODY$
  LANGUAGE 'sql' VOLATILE STRICT;
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Возврат данных из пустой таблицы / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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