Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Функции без указания типов данных в вызове
|
|||
|---|---|---|---|
|
#18+
А вот что посоветуете для такой проблемы: есть база на PostgreSQL с десятками хранимых функций, и есть скрипты (на PHP), из которых эти функции вызываются (через SELECT). И есть большое желание в этих вызовах не указывать каждый раз список типов данных, возвращаемых функцией в виде record. Т.е. вот как есть: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. А хочется, чтобы запрос был попроще: Код: plaintext Можно указать функции табличный тип в качестве возвращаемого: Код: plaintext Но далеко не все функции возвращают строку таблицы; большинство, как минимум, что-нибудь джойнят. Можно создать тип: Код: plaintext 1. 2. Но для множества функций это не слишком удобно, да и при изменении параметров функции придётся переедлывать тип. Что ещё можно придумать, чтобы возвращать набор разнотипных данных и не указывать эти типы в запросах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.05.2005, 16:19 |
|
||
|
Функции без указания типов данных в вызове
|
|||
|---|---|---|---|
|
#18+
а зачем это нужно? что такого страшного в запросах? зато хоть понятно (ИМХО) что запросы делают и какие поля используются ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2005, 15:15 |
|
||
|
Функции без указания типов данных в вызове
|
|||
|---|---|---|---|
|
#18+
vfabrа зачем это нужно? что такого страшного в запросах? зато хоть понятно (ИМХО) что запросы делают и какие поля используются Дык и так понятно: select FLD1, FLD2 from FUNCTION(10) А с типами получается, что при добавлении в процедуру возвращаемого поля все имеющиеся 30 вызовов надо переписывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2005, 18:31 |
|
||
|
Функции без указания типов данных в вызове
|
|||
|---|---|---|---|
|
#18+
ааа мля не туда запостил :-)) ИЗИНЕНИЯ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2005, 18:33 |
|
||
|
Функции без указания типов данных в вызове
|
|||
|---|---|---|---|
|
#18+
нет туда запостил ща подумаю :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2005, 18:34 |
|
||
|
Функции без указания типов данных в вызове
|
|||
|---|---|---|---|
|
#18+
аа понял надо VIEW если конечно у вас постгр их поддерживает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2005, 18:37 |
|
||
|
Функции без указания типов данных в вызове
|
|||
|---|---|---|---|
|
#18+
А что даст VIEW по-сравнению с отдельным типом под каждую функцию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2005, 19:02 |
|
||
|
Функции без указания типов данных в вызове
|
|||
|---|---|---|---|
|
#18+
ну вообще это таблица (иногда и смотря где виртуальная) и работать с ней можно как с таблицей ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2005, 19:06 |
|
||
|
Функции без указания типов данных в вызове
|
|||
|---|---|---|---|
|
#18+
Всё-таки я не уяснил, каким именно образом можно избежать переделки всех запросов к функции, если в неё добавить ещё выводимых полей. Т.е. я знаю, что можно сделать тип и менять его вместе с функцией. А есть ли более простые способы, и если да, то какие именно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2005, 18:38 |
|
||
|
Функции без указания типов данных в вызове
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. хочется чтобы функцию можно было использовать как таблицу для этого надо делать не функции (если там конечно нет какой либо навороченой логики), а страться реализовать все во вьюхах (которые как раз и являются виртуальными таблицами основанными на запросах) если вы хотите чего нить изменить все равно придется что-то переделывать. Вопрос в том насколько много надо переделывать и вообще насколько это целесообразно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2005, 00:37 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=33068482&tid=2007250]: |
0ms |
get settings: |
6ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
48ms |
get topic data: |
7ms |
get forum data: |
1ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 225ms |
| total: | 348ms |

| 0 / 0 |
