2010-12-28 4 views
0

Я использую Hibernate3 с пружинным приложением. я представил столбец в моей существующей таблице со многими одного отношения с добавлением в файле .hbm, как указано ниже:SQL Исключение: Неизвестный столбец, где пункт

<many-to-one name="qualityStatus" column="quality_status" 
    class="model.PurchaseStatus" lazy="false" fetch="join"/> 

Соответствующий объект этого НВМ имеет свойство типа «PurchaseStatus» и имя поля как «qualityStatus».

Теперь, когда я пытаюсь извлечение данных из таблицы, представляющими вышеуказанный объект с запросом:

List<Long> dnIds = session.createQuery("select dnItem.dnId from DeliveryNoteItem dnItem where dnItem.qualityStatus!=? and dnItem.qualityStatus!=? and dnItem.qualityStatus!=?") 
     .setInteger(0,1) 
     .setInteger(1,5) 
     .setInteger(2,7) 
     .list(); 

я получаю сообщение об ошибке сказав, как 'java.sql.Exception: Unknown column 'deliveryno0_.quality_status' in 'where clause' я получаю эту ошибку, когда развернут на тестовом сервере, но когда я проверить то же самое на моем локальном сервере я отлично работаю, когда я просто запускаю этот запрос непосредственно в базе данных на тестовом сервере, он возвращает мне результат. Поэтому он подтверждает, что база данных на тестовом сервере в порядке. Только когда он выполняется через приложение на тестовом сервере, я получаю эту ошибку.

Может кто-нибудь сообщить мне, что может быть причиной или как отладить это. Спасибо заранее. Ждем ответов.

ответ

1

Если у вас действительно есть столбец quality_status в вашей базе данных, то вы должны убедиться, что у вас установлена ​​самая последняя версия вашего приложения на тестовом сервере и убедитесь, что URL-адрес соединения hibernate действительно указывает на тестовую базу данных ,

Это не проблема спящего режима, а не программирование. Экологичность - проверьте свои конфигурации и переустановите.

Смежные вопросы