تهیه اسکریپت تغییر Collation تمامی فیلدهای ناهمگون در دیتابیس جاری :
DECLARE @defaultCollation NVARCHAR(1000) SET @defaultCollation = CAST( DATABASEPROPERTYEX(DB_NAME(), 'Collation') AS NVARCHAR(1000) ) select 'ALTER TABLE ' + QUOTENAME(C.TABLE_SCHEMA) +'.'+ QUOTENAME(C.Table_Name) +' ALTER COLUMN ' +' [' +Column_Name+'] ' + DATA_TYPE+'('+cast(character_maximum_length as varchar(10))+')' +' COLLATE Persian_100_CI_AS ' +(case IS_NULLABLE when 'YES' then 'NULL' else 'NOT NULL' end )+';' FROM Information_Schema.Columns C INNER JOIN Information_Schema.Tables T ON C.Table_Name = T.Table_Name WHERE T.Table_Type = 'Base Table' AND RTRIM(LTRIM(Collation_Name)) <> RTRIM(LTRIM(@defaultCollation)) --AND DATA_TYPE='nvarchar' AND character_maximum_length>0 ORDER BY C.Table_Name, C.Column_Name