У меня есть такой sql оператор, который работает в консоли sql:
CREATE OR REPLACE TRIGGER "HIST_TBL_AU" BEFORE update on "HIST_TBL" for each row begin
:new.date_updated :=systimestamp; end
, но когда я пытаюсь выполнить его с помощью диспетчера полномочий, я получаю сообщение об ошибке:
java.sql.SQLException: Missing IN or OUT parameter at index:: 1
Я обнаружил, что проблема может быть с этим кодом
:new.date_updated :=systimestamp
Я нашел решение, что я должен заменить поля на точки
, но как это сделать, если у меня есть массив операторы триггера
String[] triggers = {
"trigger1sql", "trigger2sql"
};
Мой код:
myEntity table = myEntityFactory.getTable(tableName);
for (int i = 0; i < table.getCreateTriggerStatements().length; i++) {
em.createNativeQuery((table.getCreateTriggerStatements()[i])).executeUpdate();
}
, поэтому я хочу сделать это с помощью обобщенного c способа, чтобы у меня был только один метод для всех таблиц
Может быть, есть другой способ, с помощью которого authortymanager может выполнить мой sql код? :)