Не удается обновить представление с помощью триггера INSTEAD OF

Моя база данных - это проект доступа к данным, связанный с бэкэндом SQL Server 2005. Я пытаюсь связать форму с представлением, которое использует INSTEAD OF спусковой крючок. Access считает, что представление не обновляется, поэтому делает форму доступной только для чтения; по-видимому, это не принимает во внимание курок.

Я подозреваю, что проблема в том, что метаданные SQL Server говорят, что представление не может быть обновлено. Запрос INFORMATION_SCHEMA.VIEWSнапример показывает IS_UPDATABLE = Нет Несмотря на это, я определенно могу обновить вид с помощью UPDATE заявления или используя графический интерфейс SSMS.

Кто-нибудь знает метод, который я могу использовать, чтобы убедить Access, что это представление действительно обновляемо? Я знаю, что есть и другие способы получить доступ для чтения и записи к этой форме, но я планировал использовать это представление, чтобы ограничить доступ определенных пользователей к очень специфическому подмножеству данных, и было бы намного проще, если бы я мог инкапсулировать все эти данные в этом одном представлении.

1 ответ

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

Это означает, что вам нужно преобразовать это представление в индексированное представление, которое может представлять собой потенциально очень сложные черви.

Другие вопросы по тегам