如何在派生列中插入数据 SQL

问题描述

我有一个包含派生列的视图,我需要创建一个存储过程来插入视图

我试过了

CREATE PROCEDURE INSERTInVIEW
(
    @ID DECIMAL(10,2),@Name ....,@Address....,@Phone
)
AS
BEGIN
    INSERT INTO MyView (ID,Name,Address,Phone)
    VALUES (@ID,@Name,@Address,@Phone)
END

其中地址是视图中的计算字段。 我收到插入失败的错误,因为它包含派生字段或计算字段。 执行此插入操作的最佳方法是什么?

解决方法

如果您的视图基于多个表,则可能无法更新。尝试检查 information_schema 表:

SELECT IS_UPDATEABLE
FROM INFORMATION_SCHEMA.VIEWS
WHERE TABLENAME = 'YourTableName';