2016-06-06 4 views
1

У меня есть форма в Access, ссылающаяся на таблицу SQL Server. Эта таблица имеет UID. После того, как я создаю новую запись в Access, он пытается обновить таблицу (в том числе UID) и дает мне ошибку:Обновить все строки, за исключением столбца идентификации в Access 2013

Explicit value must be specified for identity column in table 'TableName' either when IDENTITY_INSERT is set to ON or when a replication user is inserting into a NOT FOR REPLICATION identity column.

Теперь я понимаю, почему эта ошибка происходит, но я не уверен, как обойти Это. Я не могу изменить IDENTITY_INSERT, а столбец UID в Access связывает форму с подформой, поэтому мне нужно включить ее в форму. Как исключить только столбец UID из ODBC-обновления? Я знаю, что могу использовать макрос для явного определения столбцов для обновления, но должен быть более простой способ. Есть функция, такая как Me!UIDTextbox.Undo Я могу работать в событии Before Update?

Дополнительная информация: В Access отсутствует модуль VBA или запрос. Это стандартная таблица SQL-сервера, а форма доступа обновляет таблицу при изменении записи (по умолчанию для Access). Таблица связана со стандартным подключением базы данных ODBC, с UID в качестве первичного ключа.

+0

Драйвер ODBC не обновляет ключ, так как что-то еще происходит, или вы не указали идентификатор при связывающую таблицу (но тогда вам нормально не может обновляться вообще). – Gustav

+0

Вы действительно подключаетесь к Access? «IDENTITY_INSERT установлен в положение ON или когда пользователь репликации вставляет в столбец идентификации NOT FOR REPLICATION« звучит так же, как SQL Server. Access дает совсем другое сообщение об ошибке при вставке в столбец AutoNumber и не использует термин «IDENTITY_INSERT» – Brad

+0

А, я получаю его сейчас. Вы подключаетесь к SQL Server через Access (ODBC указывает на SQL Server). Как выглядит ваш оператор insert? – Brad

ответ

1

Это может быть глобальная проблема с использованием столбцов Identity в качестве Первичных ключей в Access.

патч идеи и возможные обходные пути в Problem with identity fields in MS-Access

+0

Похоже, я могу на самом деле запрограммировать обновление. Я попробую. – jjjjjjjjjjj

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