نمایش نتایج 1 تا 11 از 11

نام تاپیک: تبدیل ی و ک عربی به ی و ک فارسی

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    اردیبهشت 1390
    پست
    51

    تبدیل ی و ک عربی به ی و ک فارسی

    سلام به دوستان
    اقا من یه بانک اطلاعاتی دارم که قبلا اطلاعاتی ثبت شده که تو این بانک اطلاعاتی که ثبت شده حرف ی و ک عربی وارد شده حالا می خوام تمای اطلاعات این بانک که ی و ک عربی دارند به ی و ک فارسی تبدیل بشه چطوری می تونم اینکارو بکنم
    علت اینکه می خوام این کارو بکنم اینکه وقتی می خوام افرادی که فامیلیشون محمدی یا اکبری رو پیدا کنم ی و ک رو که میزنم با کد کاراکتری ی و ک فارسی مقایسه میکنه و در نتیجه پیدا نمیکنه
    ممنون میشم کسی کد یا اسکریپتی رو معرفی کنه

  2. #2
    کاربر دائمی آواتار sempay_ninjutsu
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    تهران
    سن
    35
    پست
    313

    نقل قول: تبدیل ی و ک عربی به ی و ک فارسی

    احتیاج به کد نیست زبان پایگاه دادت رو به persian_bin یا arabic__Bin2 تغییر بده درست میشه اگه نشد یه فارسی ساز کی برد از اینترنت بگیر

  3. #3

    نقل قول: تبدیل ی و ک عربی به ی و ک فارسی

    سلام، ممنون از جوابتون، منم مشکل مشابهی دارم، از SQL 2005 استفاده میکنم، زبان persian_BIN که گفتین و نداره و من از Arabic_CS_AI_KS_WS استفاده میکنم و زیر ی ها نقطه میندازه. لطفا راهنمایی کنید

  4. #4

    نقل قول: تبدیل ی و ک عربی به ی و ک فارسی

    به هیچ وجه از persian_bin استفاده نکنید چون حروف "گپچژ" و ... رو نمیشناسه و اگر سورت بزنید روی ستون اول این حروف رو میاره و بعدشم شروع میکنه از الف به بعد . در کل مشکل داره .
    میتونی راه حل رو در اپلیکیشن خودت بذاری (روی اسکی کدهاش)

  5. #5
    کاربر دائمی
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    ایران تهران
    پست
    608

    نقل قول: تبدیل ی و ک عربی به ی و ک فارسی

    DECLARE @Table NVARCHAR(MAX)
    DECLARE @Col NVARCHAR(MAX)
    DECLARE Table_Cursor CURSOR
    FOR
    --پيدا کردن تمام فيلدهاي متني تمام جداول ديتابيس جاري
    SELECT a.name, --table
    b.name --col
    FROM sysobjects a,
    syscolumns b
    WHERE a.id = b.id
    AND a.xtype = 'u' --User table
    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
    )

    OPEN Table_Cursor FETCH NEXT FROM Table_Cursor INTO @Table,@Col
    WHILE (@@FETCH_STATUS = 0)
    BEGIN
    EXEC (
    'update [' + @Table + '] set [' + @Col +
    ']= REPLACE(REPLACE(CAST([' + @Col +
    '] as nvarchar(max)) , NCHAR(1610), NCHAR(1740)),NCHAR(1603),NCHAR(1705)) '
    )

    FETCH NEXT FROM Table_Cursor INTO @Table,@Col
    END CLOSE Table_Cursor DEALLOCATE Table_Cursor

  6. #6
    کاربر دائمی
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    ایران تهران
    پست
    608

    نقل قول: تبدیل ی و ک عربی به ی و ک فارسی

    برای از این به بعد هم از نوع nvarchar استفاده کنید و سعی کنید کلاینتاتون win xp نباشه که دیگه این مشکلات پیش نیاد پ

  7. #7

    نقل قول: تبدیل ی و ک عربی به ی و ک فارسی

    اگر نباید کلاینت xp باشه چی باید باشه تا این مشکلو نداشته باشه ؟

  8. #8
    کاربر جدید
    تاریخ عضویت
    بهمن 1391
    محل زندگی
    www.fyek.ir
    پست
    14

    نقل قول: تبدیل ی و ک عربی به ی و ک فارسی

    یکدونه kbdf.dll از اینترنت پیدا کن و تو کلاینت های ویندوزت نصب کن تا مشکل کلاینت هاتم حل بشه

  9. #9
    کاربر جدید
    تاریخ عضویت
    مهر 1386
    محل زندگی
    Tehran
    پست
    7

    نقل قول: تبدیل ی و ک عربی به ی و ک فارسی


  10. #10
    کاربر دائمی آواتار joker
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    اصفهان
    سن
    42
    پست
    1,326

    نقل قول: تبدیل ی و ک عربی به ی و ک فارسی

    به نظرتون نوشتن تریگر موقع ورود دیتا در دیتابیس و تغییر کد کاراکترها به فارسی در اون لحظه بهتر نیست ؟ اینطوری کلاینت هم مهم نیست چه ویندوزی روش نصب باشه :)




    CREATE TRIGGER TrueStr ON [dbo].[Table1]
    After INSERT, UPDATE
    AS
    Update Table1 SET [name] = REPLACE([name],NCHAR(1740),NCHAR(1610))



    البته فکر کنم این دستور پدر دیتابیس را دربیاره ، و فقط برای رشته ورودی قبل از ثبت باید کد نوشته بشه که من نمیدونم ، دوستان sql کار زحمتشو بکشن لطفا
    آخرین ویرایش به وسیله joker : دوشنبه 17 آذر 1393 در 10:03 صبح

  11. #11
    کاربر دائمی آواتار SayeyeZohor
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    ا-ص-ف-ه-ا-ن
    پست
    631

    نقل قول: تبدیل ی و ک عربی به ی و ک فارسی

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


    --اسکریپتی برای یک دست سازی ی و ک در تمامی رکوردهای تمامی جداول دیتابیس جاری
    -- اسکریپت زیر ی و ک عربی را به فارسی تبدیل می‌کند
    -- در صورت نیاز به حالت عکس ، جای مقادیر عددی یونیکد را تعویض نمائید

    DECLARE @Schema NVARCHAR(MAX),
    @Table NVARCHAR(MAX),
    @Col NVARCHAR(MAX)

    DECLARE Table_Cursor CURSOR
    FOR
    --پیدا کردن تمام فیلدهای متنی تمام جداول دیتابیس جاری
    SELECT d.name, -- schema
    a.name, --table
    b.name --col
    FROM sysobjects a, syscolumns b, sys.objects c, sys.schemas d
    WHERE (a.id = b.id) AND (a.id = c.object_id) AND (c.type = 'U') AND (c.schema_id = d.schema_id)
    AND a.xtype = 'u' --User table
    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
    )

    OPEN Table_Cursor FETCH NEXT FROM Table_Cursor INTO @Schema, @Table, @Col
    WHILE (@@FETCH_STATUS = 0)
    BEGIN
    EXEC (
    'update [' + @Schema + '].[' + @Table + '] set [' + @Col +
    ']= REPLACE(REPLACE(CAST([' + @Col +
    '] as nvarchar(max)) , NCHAR(1610), NCHAR(1740)),NCHAR(1603),NCHAR(1705)) '
    )

    FETCH NEXT FROM Table_Cursor INTO @Schema, @Table, @Col
    END CLOSE Table_Cursor DEALLOCATE Table_Cursor



قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •