Дозвуковая генерация таблицы без первичного ключа - PullRequest
1 голос
/ 18 января 2010

Мне нужно создать таблицу без первичного ключа. Абсолютно необходимо, чтобы у таблицы не было первичного ключа. Пожалуйста, помогите.

Ответы [ 3 ]

5 голосов
/ 18 января 2010

Для SubSonic абсолютно необходимо, чтобы таблица содержала первичный ключ :)

Ниже приводятся цитаты из SubSonic документов по соглашениям :

Первичные ключи

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

Если вы нам не верите или считаете, что это глупое соглашение - SubSonic не для вас.

1 голос
/ 18 января 2010

как указал Адам, это невозможно. Честно говоря, я не могу вспомнить ситуацию (за пределами OLAP), когда у вас не может быть ПК. Или, возможно, вы застряли в унаследованной ситуации - я могу это выкопать.

Что вы можете сделать, чтобы обойти это, как вы указали, использовать наши инструменты запроса, а затем вы можете отправить результаты ToList <>. Обновления должны работать так же, хотя не уверен насчет вставок.

1 голос
/ 18 января 2010

Есть ли причина, по которой вы не можете использовать что-то вроде последовательностей?

class Something {
     private static final SEQUENCE seq = getDBsequence()

     @id
     private final long id = seq.newNumber();

     private final String whateverData;
}

РЕДАКТИРОВАТЬ: То, как я написал это было довольно глупо, потому что, как только вы перезагрузите приложение. Вы получите дубликаты ключей. Вы должны использовать последовательность, предоставленную БД. Извините за это.

...