Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
27.04.2017, 13:00
|
|||
---|---|---|---|
|
|||
Имя поля, как переменная |
|||
#18+
Добрый день, подскажите пожалуйста, как передать имя поля или имя таблицы в функцию переменной? То есть, есть функция: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8.
Вот поле статус надо передавать в функцию переменной, как то так: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Ну и $1 = 'status' ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.04.2017, 14:33
|
|||
---|---|---|---|
|
|||
Имя поля, как переменная |
|||
#18+
morozeckiy, имя поля передавать как параметр функции и использовать execute immediate для выполнения динамического запроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.04.2017, 14:48
|
|||
---|---|---|---|
|
|||
Имя поля, как переменная |
|||
#18+
Да, допер до такой конструкции Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.04.2017, 14:58
|
|||
---|---|---|---|
|
|||
Имя поля, как переменная |
|||
#18+
grgdvo, Хотя появилась новая проблема. Вот так выглядит функция целиком: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9.
выдает ошибку error: there is no parameter $5 internalQuery: 'INSERT INTO personal_account.request_log (id_request,id_user,time,id_status) VALUES ($3,$4,$5,$1) RETURNING id_log', where: 'PL/pgSQL function personal_account.update_req_insert_log(integer,integer[],integer,integer,bigint,text,text) line 7 at EXECUTE statement', Так было когдая я не использовал USING, но тут то я все указал. Поле в БД bigint ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.04.2017, 15:19
|
|||
---|---|---|---|
|
|||
Имя поля, как переменная |
|||
#18+
Чет я совсем запарился.... VALUES ($3,$4,$5,$1) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.04.2017, 17:27
|
|||
---|---|---|---|
|
|||
Имя поля, как переменная |
|||
#18+
morozeckiyEXECUTE ''INSERT INTO request_log (id_request,id_user,time,''||row_table||'') VALUES ($3,$4,$5,$1) RETURNING id_log'' INTO i USING req, dispatch, time_add, item ; morozeckiyвыдает ошибку error: there is no parameter $5 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&mobile=1&tid=1996547]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 330ms |
total: | 465ms |
0 / 0 |