powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / имя поля в переменной
6 сообщений из 6, страница 1 из 1
имя поля в переменной
    #33215604
Gar4ica
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как подсунуть имя поля в переменной?
Это вобще как то возможно?

CREATE FUNCTION test(text) RETURNS text AS'
DECLARE
param ALIAS FOR $1;
result text;
BEGIN
SELECT INTO result param from pay_new where id = 0;
RETURN result;
END;
' LANGUAGE 'plpgsql';

# SELECT test('login');
test
-------
login
(1 запись)

Help!!!
...
Рейтинг: 0 / 0
имя поля в переменной
    #33215668
4321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EXECUTE strSQL
...
Рейтинг: 0 / 0
имя поля в переменной
    #33215687
Andrey Daeron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gar4icaКак подсунуть имя поля в переменной?
Это вобще как то возможно?

CREATE FUNCTION test(text) RETURNS text AS'
DECLARE
param ALIAS FOR $1;
result text;
BEGIN
SELECT INTO result param from pay_new where id = 0;
RETURN result;
END;
' LANGUAGE 'plpgsql';

# SELECT test('login');
test
-------
login
(1 запись)

Help!!!
Посмотреть в сторону EXECUTE.
http://www.postgresql.org/docs/8.0/interactive/plpgsql-statements.html#PLPGSQL-STATEMENTS-PERFORM
...
Рейтинг: 0 / 0
имя поля в переменной
    #33215836
Gar4ica
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если не затруднит, продемонстрируйте пожалуйста на моем примере использование EXECUTE.
...
Рейтинг: 0 / 0
имя поля в переменной
    #33215950
Andrey Daeron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gar4icaЕсли не затруднит, продемонстрируйте пожалуйста на моем примере использование EXECUTE.

Наверно примерно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
CREATE FUNCTION test(text) RETURNS text AS'
DECLARE
param ALIAS FOR $1;
result text;
curs1 refcursor;
BEGIN
OPEN curs1 FOR EXECUTE 'SELECT ' || param || 'from pay_new where id =  0 ;';
FETCH curs1 INTO result;
CLOSE curs1;

RETURN result;
END;
' LANGUAGE 'plpgsql';
На практике не проверял. Но, ИМХО, должно работать :)
Использовалась страничка:
http://www.postgresql.org/docs/8.0/interactive/plpgsql-cursors.html#PLPGSQL-CURSOR-OPENING
...
Рейтинг: 0 / 0
имя поля в переменной
    #33216012
Gar4ica
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Andrey Daeron от души благодарю, очень помог!!!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / имя поля в переменной
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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