Свободный идентификатор Oracle Nhibernate слишком длинный - проблема с псевдонимом - PullRequest
2 голосов
/ 24 января 2010

Я пытался это сделать.

HasManyToMany<YechidotDoarInGroup>(x => x.Col_yig) 
  .Table("PigToYig") 
  .ChildKeyColumn("YIG_GROUP_RECID") 
 .ParentKeyColumn("PIG_GROUP_RECID"); 

но у меня есть:

ORA-00942: таблица или представление не существует

Я пытаюсь установить соединение HasManyToMany не по ID, а по какая-то другая собственность.

Сначала я получил - слишком длинное сообщение. Когда я попытался ввести собственное имя таблицы в качестве псевдонима, оно не распознается. Что я должен делать?

Ответы [ 3 ]

2 голосов
/ 24 января 2010

Проблема может быть в следующем:

.Table("PigToYig") 

Имена объектов Oracle по умолчанию в верхнем регистре. Однако в данном случае Oracle применяет имена в двойных кавычках. Другими словами, если ваша таблица имеет имя по умолчанию, вам может потребоваться передать это вместо ...

.Table("PIGTOYIG") 

Зависит от того, как NHibernate преобразует эти переменные в SQL (я не знаком с NHibernate).

1 голос
/ 25 февраля 2010

Определите метод Table () перед всеми вашими объявлениями отображения.

public EmployeeMap : ClassMap<Employee>
{
    public EmployeeMap()
    {
        Table("EMPLOYEE");
        // your declaration
        Id(x => x.IdEmployee);        
    }
}
1 голос
/ 24 января 2010

Причина: введенная таблица или представление не существует, синоним, который не разрешено здесь было использовано, или вид был ссылка там, где требуется таблица. Существующие пользовательские таблицы и представления могут быть перечислены путем запроса данных толковый словарь. Определенные привилегии могут быть требуется для доступа к таблице. Если приложение вернуло это сообщение, таблица, к которой пыталось получить доступ приложение не существует в базе данных, или приложение не имеет доступа к Это.

Действие:
Проверьте каждое из следующего:

 * the spelling of the table or view name.
 * that a view is not specified where a table is required.
 * that an existing table or view name exists.

источник ora-code.com

...