我試圖做我的IIS日誌表如下: ALTER TABLE [W3CLog]
ADD [LogTime] AS [date] + ([time] - '1900-01-01') PERSISTED
但是,SQL Server 2008中告訴我: Computed column 'LogTime' in table 'W3CLog' cannot be persisted because the
我認爲這不是確定性的,因爲DB_NAME()不是確定性的嗎?如果DB_NAME()不確定,爲什麼它不是確定性的? ALTER FUNCTION [TheSchema].[udf_IS_PRODUCTION]()
RETURNS bit
WITH SCHEMABINDING
AS
BEGIN
RETURN CASE WHEN DB_NAME() = 'PRODUC
我有以下功能: SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER FUNCTION [dbo].[IP4toBIGINT](
@ip4 varchar(15)
)
RETURNS bigint
WITH SCHEMABINDING
AS
BEGIN
-- oc3 oc2 oc1 oc0
--
與this question相關,我決定檢查我的數據倉庫中的UDF(這在很大程度上應該是確定性的),並且我發現了幾個不適合的UDF。 例如: CREATE FUNCTION [udf_YearFromDataDtID]
(
@DATA_DT_ID int
)
RETURNS int
AS
BEGIN
RETURN @DATA_DT_ID/10000
END
在此查
在this question傳統,在the documentation光,一個人如何使這個功能確定性: ALTER FUNCTION [udf_DateTimeFromDataDtID]
(
@DATA_DT_ID int -- In form YYYYMMDD
)
RETURNS datetime
WITH SCHEMABINDING
AS
BEGIN
RETURN