我有以下函数。
create FUNCTION [dbo].[Valid](@c char(9))
RETURNs bit
as
begin
DECLARE @sum int = 0;
return 0
end
"最初的回答":并且以下SQL语句
create table test(A char(10))
alter table test add C as dbo.Valid(A) persisted;
错误信息:
Msg 4936,级别 16,状态 1,第 50 行
表 'test' 中的计算列 'C' 无法持久化,因为该列是非确定性的。
最初的回答:
这个错误是因为 'C' 列是一个非确定性列,不能被持久化。