-
После ExecSQL, вываливается ошибка EOraError ORA-01747: invalid user.table.column, table.column, or column specification
При этом строка sql.text такая: Update SUBSCRIBER set :Fld = :Value where ID_SUBSCRIBER = :ID_SUBSCRIBER
параметры такие Fld=NAME_SUBSCR Value='ЗАО XYZ' ID_SUBSCRIBER=8
Если я копирую это в PL/SQL developer, заменяю все :XX на соотв. параметры из списка и жму F8 - обновляется таблица нормально.
Может, нельзя параметризовать поля? (:fld)
-
параметры не могут выступать в качестве имени поля... и оракл тут ни при чем...
-
понял блин, неудобно
-
> блин, неудобно
удобно. подумай, почему. если хочется странного - EXECUTE IMMEDIATE ... USING
-
> если хочется странного - EXECUTE IMMEDIATE ... USING
нет пожалуй, лучше логику переделать
> удобно. подумай, почему.
подумал. Не понял.
-
> удобно. подумай, почему. > подумал. Не понял.
и почему?
-
> [5] 12 © (13.08.10 08:37)
Насколько я помню права доступа проверяются на стадии разбора запроса. А при неопределенном поле как проверить права?
-
> и почему?
потому что план запроса строится
-
аа.. точно спасибо!
|