Форум программистов, компьютерный форум, киберфорум
Oracle
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/55: Рейтинг темы: голосов - 55, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 6
1

Ошибка ORA-01400 у одного пользователя

29.08.2011, 10:46. Показов 11229. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, уважаемые форумчане! Проблема следущего плана: У нашей БД Oracle 10g XE есть GUI через который пользоваетель рассчитывает начисления по датам. Так вот у одного пользователя (у Админа такой проблемы нет) они не добавляются и выдает ошибку Ошибка ORA-01400: cannot insert NULL. Все триггеры и процедуры, указаные в ошибке валидны и работают прекрасно. Строка в которую триггер, по каким то причинам, пытается забить null,- это дата платежа (NOT NULL).
В чем вообще ТЕОРИТИЧЕСКИ может быть проблема? О_о
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.08.2011, 10:46
Ответы с готовыми решениями:

ORA-01031, ORA-01034, ORA-27101
Доброе утро! Я вообще ни раз не базист, но появилась необходимость поставить oracle БД. Выбор...

ORA-00942: таблица или представление пользователя не существует
Добрый день форумчане, помогите по ораклу. Версия 11g. Начал работать с пользователями и ролями и...

2 пользователя на сервере. 3 пользователь не может войти просит одного из пользователя отключить
Добрый день.проблема в организации. ЛВС сервер2008. работаю удаленно 2 пользователя на сервере. 3...

Eclipse, Toad plugin, Oracle DB: ora-00604, ora-12705
Есть проблема. Когда я подрубаюсь с помощью JDBC к бд из своего прилложения на java, перед этим...

9
Модератор
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
29.08.2011, 11:08 2
Чудес не бывает. Если Oracle говорит, что в какую-то колонку пытаются передать NULL, хотя там его быть не может (например, колонка объявлена как NOT NULL) - значит так оно и есть. Попытайся увидеть те значения, которые передаются в INSERT (например, записать их в какую-то таблицу типа лога, возможно в автономной транзакции).
1
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 6
29.08.2011, 11:21  [ТС] 3
Grossmeister, я верю в чудеса Проблема в том, что мы делали уже и SQL логи. Событие не ловится. Вводимые значения у всех других пользователей верные. Триггеры те же, процедуры те же. Если было неверное значение, то GUI бы его не пропустил и проблема была бы у всех пользователей, а не у одного.
0
Модератор
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
29.08.2011, 11:26 4
Не понял, как это "не ловится"?
Создаешь функцию логирования с прагмой автономной транзакции (чтобы лог заполнялся даже при откате основной). Перед вызовом INSERT с помощью этой фунции записываешь все передаваемые значения в свою таблицу, созданную для логирования. Потом вызываешь действие под "нехорошим пользователем".
А насчет того, что "ГУИ не пропустил" - мало ли какие бывают ошибки.
0
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 6
29.08.2011, 11:46  [ТС] 5
Grossmeister, спасибо, конечно, попробуем, но де-факто там стопятсот триггеров, в половине из которых есть рекурсия и циклы и найти null будет сложно. Тем более лог уже создавали и значение "потерялось" после обработки триггером, который его никак не должен был терять. Может ли быть проблема в привелегиях или ролях? Или в праймари айди?
0
Модератор
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
29.08.2011, 12:10 6
Цитата Сообщение от DKbru
Тем более лог уже создавали и значение "потерялось" после обработки триггером, который его никак не должен был терять. Может ли быть проблема в привелегиях или ролях? Или в праймари айди?
Смотря что у вас в триггере. А в чем проблема сравнить привилегии "хорошего" и "нехорошего" пользователя? Или права тоже черезчур навороченные?
0
0 / 0 / 0
Регистрация: 29.08.2011
Сообщений: 6
29.08.2011, 12:20  [ТС] 7
Grossmeister, на тестовой системе мы создавали пользователя с теми же привелегиями и он все прекрасно добавлял. К сожалению проделать то же с оригиналом не представляется возможности. Мне важно определить алгоритм инфификации "нехорошести" пользователя. Какие у него могут быть координальные отличия от всех других, которые приводят к такой ошибке?
0
3 / 3 / 0
Регистрация: 07.06.2011
Сообщений: 17
29.08.2011, 15:21 8
Думаю, проблема в правах пользователя. Надо попробовать сравнить права этого пользователя с правами пользователя, у которого проблемы нет (но не Админа).
0
105 / 75 / 0
Регистрация: 29.06.2009
Сообщений: 328
29.08.2011, 22:08 9
Цитата Сообщение от DKbru Посмотреть сообщение
Grossmeister, спасибо, конечно, попробуем, но де-факто...
О-те какой "упертый"... ему дело говорят, а он: это-же работать надо ))

Я солидарен с Grossmeister Вряд ли это права и привилегии (если конечно в топике не лукавите). Скорее всего, банальная фича зависящая от данных.

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

Для поиска этого "волшебника" можно ещё в стек ошибки глубже заглянуть.
0
3 / 3 / 0
Регистрация: 28.05.2011
Сообщений: 18
30.08.2011, 09:06 10
Как хорошо что есть Grossmeister, что бы ламеры без него делали.
0
30.08.2011, 09:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.08.2011, 09:06
Помогаю со студенческими работами здесь

ORA-01034 oracle not avaible,ORA-27101:shared memory realm does not exist
Всем добрый вечер! Oracle я устанавливаю в первый раз. По сути он мне нужен для реализации работы...

Ошибка ORA-06550
при выполнении триггера в xml в разных отчетах появляется одна и та же ошибка ...

Ошибка ORA-00904
ora-00904: "system_a": invalid identifier ora-00904: "OBJECT_NAME": invalid identifier Error...

Ошибка ORA - 00904
Доброго времени суток! есть табличка employees. Добавляю к ней столбец salary следующим образом...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru