веб приложение, где у определенного пользователя будут права на действия с данными - CRUD. Вопрос в чем, создавать таблицы с автоинкрементными pk, либо вытаскивать индекс последней записи перед добавлением, например?
Главное, чтоб не вытаскивать последнее значение, вот эт точно не надо.
если у меня стоит задача в одну сущность впихивать данные через sp, где есть fk, которые pk у себя в таблице и у них будет identity(1,1). Если в связанных таблицах не будет данных, то будет ошибка добавления.
Соглашусь очень ) видеть в топе выполняемых операций получение данных о следующем ID в финансовой системе.... грустно
Единственное неудобство Identity(1,1) при интеграции таблиц из разных баз данных...
Сначала добавляете в основную таблицу, проверяя, что записи нет, затем в другой транзакции желательно вставляете запись в связанную таблицу. Не могу вспомнить как называется глобальная переменная, в которую попадет id только вставленной записи - вот ее используйте для вставки во вторую таблицу, если было добавление, если не было добавления, то при вставке джойните вставляемые данные с основной таблицей.
вообще такая постановка задачи неверна. перед любой вставкой данных надо проверять, что сущность, чьи атрибуты вы добавляете, заведена. и это отдельные операции, атомарные.
Scope_identity()
спасиб
int в качестве id - уже не "норм"?
если у тебя сущность возникает в базе - нормас иначе нет
Обсуждают сегодня