Сохранение данных в представления

Сохранение данных в представления

Для сохранения изменений данных в представление, укажите его как объект операций INSERT, UPDATE и DELETE.

Ниже приведен пример настройки в таблице xls.objects:

IDTABLE_SCHEMATABLE_NAMETABLE_TYPETABLE_CODEINSERT_OBJECTUPDATE_OBJECTDELETE_OBJECT
 s02view_cashbookVIEWs02.view_cashbooks02.view_cashbooks02.view_cashbook
 s02usp_cashbookPROCEDUREs02.view_cashbooks02.view_cashbooks02.view_cashbook
 s02code_cashbookCODE<SQL>s02.view_cashbooks02.view_cashbooks02.view_cashbook

Ниже приведен пример настройки для представления списка запросов:

IDTABLE_SCHEMATABLE_NAMETABLE_TYPETABLE_CODEINSERT_PROCEDUREUPDATE_PROCEDUREDELETE_PROCEDUREPROCEDURE_TYPE
 s02view_cashbookVIEWs02.view_cashbooks02.view_cashbooks02.view_cashbook
 s02usp_cashbookPROCEDUREs02.view_cashbooks02.view_cashbooks02.view_cashbook
 s02code_cashbookCODE<SQL>s02.view_cashbooks02.view_cashbooks02.view_cashbook

SaveToDB 8+, DBEdit, DBGate и ODataDB создают такие настройки автоматически, если целевое представление можно определить.

Например, если у пользователя есть разрешение VIEW DEFINITION и представление или хранимая процедура имеет код типа SELECT * FROM s02.view_cashbook.

Целевое представление должно иметь поля первичного ключа или поле IDENTITY.

Детали реализации

SaveToDB и DBEdit генерируют и выполняют команды INSERT, UPDATE, DELETE самостоятельно.

DBGate выполняет команды INSERT, UPDATE, DELETE на стороне сервера, преобразуя команды POST, PUT и DELETE.

ODataDB создает объекты EntitySet представлений, и FunctionImport, возвращающими EntitySet, для хранимых процедур и объектов на основе SQL-запросов.