我試圖做我的IIS日誌表如下:爲什麼在SQL Server 2008中[date] +([time] - [offset])不確定?
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 column is non-deterministic.
表有這樣的定義:
CREATE TABLE [dbo].[W3CLog](
[Id] [bigint] IDENTITY(1,1) NOT NULL,
...
[date] [datetime] NULL,
[time] [datetime] NULL,
...
)
爲什麼這是非確定性的?
我真的需要索引該字段。該表目前有1598170行,並且查詢我們是否無法全時間進行索引查找是一件痛苦的事情。由於這是UNION與其他一些日誌格式,我們不能很容易地分開使用這兩列。
你可以使用'CONVERT(datetime,'19000101',112)'? – Gabe 2010-06-14 13:02:40