|
|
|
Присвоение значению элементу композитного типа
|
|||
|---|---|---|---|
|
#18+
Версия 9.3. Объявляю два композитных типа. Приведенный ниже пример доступа к полям работает корректно. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. А попытка присвоить элементу композитного типа значение оператором: Код: plsql 1. приводит к синтаксической ошибке. Существует ли способ присваивания значения отдельным элементам второго уровня? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2016, 19:52 |
|
||
|
Присвоение значению элементу композитного типа
|
|||
|---|---|---|---|
|
#18+
igoro, postgresql - субд, требующая жёсткой типизации. 0 у вас - скорее всего инт. Попробуйте явное преобразование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 10:29 |
|
||
|
Присвоение значению элементу композитного типа
|
|||
|---|---|---|---|
|
#18+
ОКТОГЕН, что-то вы мимо тазика. при чём тут типизация ? постгрес не может налить в поле второго уровня вложенности. (так же как, например, аппендить двумерные массивы просто присвоением элемента) но на самом деле тут ничего страшного -- поскольку, судя по всему, когда вы "наливаете поле в компаунд" вы, на деле, перекопируете весь компаунд, и в этой копии меняете поле. могу врать, но судя по поведению inout-ов, на то похоже (любой оператор -- функция, любая функция принимает значение (копию) переданного, и работает над ней). если было бы по другому -- компаунд мог бы лежать полем на диске, и вы прямо по ссылке переписывали бы поле, в обход транзакционности, версионности и всего такого прочего. А иметь собственные ссылочные [про которые заведомо было бы известно, что они не поля записи с диска] типы plpgsql не умеет. не положено, типа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 10:44 |
|
||
|
|

start [/forum/topic.php?fid=53&fpage=97&tid=1997434]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 370ms |

| 0 / 0 |
