Java вставить запись в Oracle 9i - PullRequest
1 голос
/ 16 июля 2011

Я пытаюсь вставить запись в Oracle через JDBC.Тем не менее, он возвращает

"ORA-20999: 735014|Unable to make amendment - session was not initialised" when execute the executeUpdate statement. 

вот SQL:

Statement stmt = con.createStatement();
result = stmt.executeUpdate("insert into test_table (ID, LOCATION) select '1', LOCATION from test_table where rownum=1");

Любая идея, чтобы это исправить ??

1 Ответ

1 голос
/ 18 июля 2011

Похоже, что ваша база данных использует безопасность на уровне строк, т. Е. У вас нет одинаковых прав доступа для всех строк таблицы. Вместо этого права зависят от некоторой контекстной информации, например, отдел, к которому вы принадлежите.

Уровень безопасности строки требует инициализации контекста, прежде чем вы сможете получить доступ к данным, чтобы база данных знала, к какому отделу вы принадлежите (или какой бы ни была требуемая информация о контексте).

Если у вас открыт сеанс базы данных, вам, вероятно, придется сначала вызвать определенную процедуру PL / SQL, прежде чем вы сможете выбрать или вставить данные. Администратор базы данных или - в случае коммерческого пакета программного обеспечения - производитель программного обеспечения, безусловно, может рассказать вам больше об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...