How could I modify my script below to alter the column type to datetime after it has performed it's string manipulations please? DECLARE @tbl varchar(1000), @col varchar(1000), @sql nvarchar(4000)DECLARE Cur1 CURSOR FAST_FORWARD FORSELECT o.name tbl , c.name colFROM sysobjects o INNER JOIN syscolumns c ON o.id = c.idWHERE o.name = 'transactions' ---- replace o.name = '....' with o.xtype='U' for ALL tables in database -------AND lower(c.name) like '%date%'OPEN Cur1FETCH NEXT FROM Cur1 INTO @tbl, @colWHILE @@fetch_status = 0BEGINSET @sql = 'UPDATE dbo.' + @tbl + 'SET ' + QUOTENAME(@col) + ' = CASEWHEN ' + QUOTENAME(@col) + ' = ''0'' THEN NULLWHEN ISDATE(' + QUOTENAME(@col) + ') = 0 THEN NULLWHEN ' + QUOTENAME(@col) + ' LIKE ''13%'' THEN ''20'' + SUBSTRING(' + QUOTENAME(@col) + ', 2, LEN(' + QUOTENAME(@col) + '))WHEN ' + QUOTENAME(@col) + ' LIKE ''12%'' THEN ''20'' + SUBSTRING(' + QUOTENAME(@col) + ', 2, LEN(' + QUOTENAME(@col) + '))WHEN ' + QUOTENAME(@col) + ' LIKE ''11%'' THEN ''20'' + SUBSTRING(' + QUOTENAME(@col) + ', 2, LEN(' + QUOTENAME(@col) + '))WHEN ' + QUOTENAME(@col) + ' LIKE ''10%'' THEN ''20'' + SUBSTRING(' + QUOTENAME(@col) + ', 2, LEN(' + QUOTENAME(@col) + '))WHEN ' + QUOTENAME(@col) + ' LIKE ''9%'' THEN ''199'' + SUBSTRING(' + QUOTENAME(@col) + ', 2, LEN(' + QUOTENAME(@col) + '))WHEN ' + QUOTENAME(@col) + ' LIKE ''8%'' THEN ''198'' + SUBSTRING(' + QUOTENAME(@col) + ', 2, LEN(' + QUOTENAME(@col) + '))WHEN ' + QUOTENAME(@col) + ' LIKE ''7%'' THEN ''197'' + SUBSTRING(' + QUOTENAME(@col) + ', 2, LEN(' + QUOTENAME(@col) + '))ELSE ' + QUOTENAME(@col) + 'END'PRINT @sqlEXECUTE sp_executesql @sql --UNCOMMENT TO ACTUALLY RUNFETCH NEXT FROM Cur1 INTO @tbl, @colENDCLOSE Cur1DEALLOCATE Cur1