Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Persistance d'une colonne datetime calculée dans SQL Server 2005

Qu'en est-il :

CREATE FUNCTION [dbo].[fComputeValue] (@data XML)
RETURNS varchar(50)
WITH SCHEMABINDING
AS
BEGIN
  RETURN @data.value('(/Metadata/Value[@Key="StartDate"])[1]', 'varchar(50)')
END

et :

ALTER TABLE dbo.CustomMetadataTable ADD [StartDate] AS (convert(datetime,([dbo].[fComputeValue]([CustomMetadataColumn]), 127)) PERSISTED

ou :

return convert(datetime, @data.value('(/Metadata/Value[@Key="StartDate"])[1]', 'varchar(50)'), 127)

À partir de livres en ligne :

Cela pourrait aider si vous utilisez CONVERT avec le style 127