View Full Version : تغییر کد پیج دیتا بیس
peyman_s
چهارشنبه 12 مرداد 1384, 17:55 عصر
با سلام من یک back up از دیتا بیسی دارم که اطلاعاتش فارسیه ولی کد پیج اون 1256 یا یونی کد نیست, موقعی هم که میخواهم restore کنم در سرور خودم نمی تونم کد پیج رو عوض کنم, حالا نمیدونم اصلا راهی هست که بشه کد پیج یه دیتا بیس رو بعد از ساختن(نه در هنگام ساختن) تغییر داد مثلا از master
البته export درسته و اگر هم از برنامه ای با کد پیج 1256 ببینیم هم درسته ولی در خود em نه.
ممنون
AminSobati
پنج شنبه 13 مرداد 1384, 00:57 صبح
دوست عزیزم،
شما بوسیله دستور ALTER DATABASE میتونین از پارامتر Collate استفاده کنین و Code Page رو عوض کنین.
peyman_s
پنج شنبه 13 مرداد 1384, 13:10 عصر
از راهنمایی خوب شما خیلی ممنون و متشکرم
کد پیج دیتا بیس با همین روشی که گفتید عوض کردم اما نمیدونم چرا باز هم فارسی نمیبینم, collation فیلد ها رو هم default کردم اما باز هم درست نشد.
بعد از اینکه collation یک فیلد رو پیش فرض کردم export هم که کردم درست نشون نداد فکر کنم دیتا از بین رفته باشه یعنی تبدیل شده باشه به کاراکترهایی مثل ؟ البته قبل از اینکه کد پیج دیتا بیس رو هم عوض کنم برای یک فیلد عوض کرده بودم و export کرده بودم باز هم اطلاعات فیلد از دست رفته بود و تبدیل به ؟ شده بود.
نوع داده مثلا varchar هم nvarchar تبدیل کردم بی فایده بود.
امکان داره که اطلاعات باید به کد پیج مثلا 1256 تبدیل بشه؟ یعنی خود داده های جدول ها
AminSobati
جمعه 14 مرداد 1384, 00:35 صبح
پیمان جان، اطلاعات در زمان ورود میبایست درست وارد شده باشند. یعنی از ابتدا nvarchar باید استفاده بشه. روشی که به نظرم میرسه اینه که یک دیتابیس با Arabic Collation بسازین و اطلاعات رو به اون Export کنین. در این حالت Collation Converion صورت میگیره. اگر مشکل حل نشد، شاید تنها راه این باشه که یک Converter خودتون بنویسین
peyman_s
شنبه 15 مرداد 1384, 11:32 صبح
البته این روشی که شما گفتید رو قبلا امتحان کرده بودم و درست بود اما مسئله اینجا بود که دیتا بیس با نام اصلی خودش اهیت داره به همین خاطر تغییر کد پیج دیتا در خود دیتا بیس اصلی مورد نظر من بود.
حالا از یک روشی که شاید روش خوبی نباشه با کمک راهنمایی شما در مورد ALTER DATABASE COLLATE که یک دیتا بیس TEMPORERY باشه با کدپیچ 1256 بعد اطلاعات دیتا بیس اصلی رو بعد از restore به دیتابیس موقت export کنم بعد کد پیج دیتابیس اصلی رو عوض کنم دوباره به دیتابیس اصلی export کنم, و همه اینها هم داخل یک task
البته هنوز این کار رو نکردم چون بار زیادی رو به سرور اضافه میکنه
نظر شما چیه ؟
delphi77
شنبه 15 مرداد 1384, 14:02 عصر
پیمان جان، اطلاعات در زمان ورود میبایست درست وارد شده باشند. یعنی از ابتدا nvarchar باید استفاده بشه. روشی که به نظرم میرسه اینه که یک دیتابیس با Arabic Collation بسازین و اطلاعات رو به اون Export کنین. در این حالت Collation Converion صورت میگیره. اگر مشکل حل نشد، شاید تنها راه این باشه که یک Converter خودتون بنویسین
منظور شما از convertor چیست یعنی در خود sql server می توان چنین تابعی را نوشت
AminSobati
شنبه 15 مرداد 1384, 16:05 عصر
منظور شما از convertor چیست یعنی در خود sql server می توان چنین تابعی را نوشت
بستگی به پیچیدگی کار Convert داره. یا در SQL Server یا از طریق یک برنامه خارجی مثلا VB که اطلاعات رو بخونه و تبدیل کنه و Update کنه.
AminSobati
شنبه 15 مرداد 1384, 16:07 عصر
البته این روشی که شما گفتید رو قبلا امتحان کرده بودم و درست بود اما مسئله اینجا بود که دیتا بیس با نام اصلی خودش اهیت داره به همین خاطر تغییر کد پیج دیتا در خود دیتا بیس اصلی مورد نظر من بود.
حالا از یک روشی که شاید روش خوبی نباشه با کمک راهنمایی شما در مورد ALTER DATABASE COLLATE که یک دیتا بیس TEMPORERY باشه با کدپیچ 1256 بعد اطلاعات دیتا بیس اصلی رو بعد از restore به دیتابیس موقت export کنم بعد کد پیج دیتابیس اصلی رو عوض کنم دوباره به دیتابیس اصلی export کنم, و همه اینها هم داخل یک task
البته هنوز این کار رو نکردم چون بار زیادی رو به سرور اضافه میکنه
نظر شما چیه ؟
با همون دستور ALTER DATABASE میتونین نام دیتابیس رو هم عوض کنین
karimh
شنبه 15 مرداد 1384, 16:42 عصر
ما تو شرکتمون وقتی به این مشکل برمیخوریم default font windows رو هم فارسی میکنیم و location رو هم ایران انتخاب میکنیم ...شاید به دردت بخوره یه امتحان بکن...........
delphi77
شنبه 15 مرداد 1384, 17:20 عصر
بستگی به پیچیدگی کار Convert داره. یا در SQL Server یا از طریق یک برنامه خارجی مثلا VB که اطلاعات رو بخونه و تبدیل کنه و Update کنه.
تابعی در این حد که یک نوع داده ایی text را از یک کد پیج به یک کد پیج دیگر تبدیل کند البته توسط sql server.
peyman_s
شنبه 15 مرداد 1384, 17:58 عصر
ما تو شرکتمون وقتی به این مشکل برمیخوریم default font windows رو هم فارسی میکنیم و location رو هم ایران انتخاب میکنیم ...شاید به دردت بخوره یه امتحان بکن...........
همین الان دیتابیس های فارسی رو دارم رو همین سرور, کدپیچ دیتا است که باید عوض شه, با فونت مشکلی ندارم
AminSobati
شنبه 15 مرداد 1384, 19:59 عصر
من تابع Built-in سراغ ندارم ولی کپی از یک دیتابیس به دیتابیس دیگه باعث تبدیل میشه
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.