اسفند
۲۲

یکسان سازی ی و ک فارسی به عربی در SQL Server 2000

Author سيد علي جلوه گران    Category SQL Server     Tags ,

کد مربوط به آقای نصیری که برای اصلاح دیتابیس اسکیوال سرور ۲۰۰۵ به بعد بود توسط دوست خوبم امیرحسین دانش افروز اصلاح شد تا بر روی sql server 2000 هم کار کند.

شما هم استفاده کنید:

USE TestDB;

DECLARE @Table NVARCHAR(500),

@Col NVARCHAR(500),

@S nvarchar(500)

DECLARE Table_Cursor CURSOR

FOR

--پیدا کردن تمام فیلدهای متنی تمام جداول دیتابیس جاری

SELECT a.name, --table

b.name --col

FROM  sysobjects a,

syscolumns b

WHERE  a.id = b.id

AND (

b.xtype = 99  --ntext

OR b.xtype = 35  -- text

OR b.xtype = 231 --nvarchar

OR b.xtype = 167 --varchar

OR b.xtype = 175 --char

OR b.xtype = 239 --nchar

)

and a.xtype='U' and substring(a.name,1,9) <> 'conflict_' and a.name
<>'dtproperties'

OPEN Table_Cursor FETCH NEXT FROM  Table_Cursor INTO @Table,@Col

WHILE (@@FETCH_STATUS = 0)

BEGIN

set @S='update [' + @Table + '] set [' + @Col +

']= REPLACE(REPLACE(CAST([' + @Col +

'] as nvarchar(1000)) , NCHAR(1740),
NCHAR(1610)),NCHAR(1705),NCHAR(1603)) '

--print @S

EXEC (  @S )

FETCH NEXT FROM Table_Cursor INTO @Table,@Col

END

CLOSE Table_Cursor DEALLOCATE Table_Cursor

دیدگاه شما؟

*