在我发布关于缺少相关文档的连接项目之前,有人会确认我不仅仅是在这里遗漏了什么吗?
在format
被列为字符串函数的文档页面上:
“所有内置的字符串函数都是确定性的。” -字符串函数 (Transact-SQL)
在相关页面上也没有提到format
不确定性:
但是,在尝试创建持久计算列时:
create table t (date_col date);
insert into t values (getdate());
alter table t add date_formatted_01 as format(date_col,'YYYY') persisted;
返回以下错误:
无法保留表“t”中的计算列“date_formatted_01”,因为该列是不确定的。
该文档指出
如果未提供 culture 参数,则使用当前会话的语言。
但添加文化论点并没有改变事情
这也失败了
alter table t add date_formatted_02 as format(date_col, 'd', 'en-US' ) persisted
rextester 演示:http ://rextester.com/ZMS22966
dbfiddle.uk 演示:http ://dbfiddle.uk/?rdbms=sqlserver_next&fiddle=7fc57d1916e901cb561b551af144aed6