Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
22.02.2021, 22:50
|
|||
---|---|---|---|
Неявное преобразование типа во вьюхе |
|||
#18+
Имеется таблица TBL (id integer, name varchar2(255)) По ней имеется вьюха: Код: plsql 1. 2.
Имеется триггер instead of на эту вьюху, в котором делается уже непосредственный апдейт в саму таблицу. Хочется добавить виртуальный символьный столбец ко вьюхе, так чтобы его значение при апдейте вьюхи можно было перехватить в триггере: Код: plsql 1. 2. 3.
Если делать апдейт вирт столбца во вьюхе: Код: plsql 1. 2. 3.
то в триггере можно получить его значение: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8.
Беда только в том, что в триггере получаем ровно столько символов значения сколько неявно определили при определении столбца во вьюхе, т.е. в нашем примере если '1' virt, то :new.virt = '6', а не '6789', если '11' virt, то :new.virt = '67' и т.д. Как бы так определить этот столбец во вьюхе, чтобы оракл понимал, что это символьное поле переменной длины например varchar2(255) ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.02.2021, 23:02
|
|||
---|---|---|---|
|
|||
Неявное преобразование типа во вьюхе |
|||
#18+
CAST(). Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.02.2021, 23:03
|
|||
---|---|---|---|
|
|||
Неявное преобразование типа во вьюхе |
|||
#18+
verter, Код: plsql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
22.02.2021, 23:17
|
|||
---|---|---|---|
Неявное преобразование типа во вьюхе |
|||
#18+
ASNexus Код: plsql 1. 2. 3.
Да, работает. Спасибо! Извините за это глупый вопрос, я на самом деле пробывал так, но писал cast('1' as varchar2) и мне, естественно, оракл ругался - не нужно такие вещи делать перед праздником :) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=52&mobile=1&tid=1880416]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
66ms |
get topic data: |
15ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 188ms |
0 / 0 |