PDA

View Full Version : فارسی نویسی در دیتابیس



vahid1400
دوشنبه 16 مرداد 1391, 15:30 عصر
سلام

دوستان من با vb.net یه دیتابیس ایجاد کردم و خاصیت Data Type فیلد هامو روی sql_variant ست کردم

حالا وقتی اطلاعات فارسی رو بازخوانی میکنم بعضی ها درست هست و بعضی ها به شکل ؟؟؟؟؟؟؟؟

من قبلا بانک اطلاعاتیمو با sql server 2008 r2 ساخته بودم اونجا یه گزینه داشت به اسم collation وقتی اون رو روی arabic-as-ci میذاشتم دیتابیس بدون مشکل با حروف فارسی کار میکرد اما الان که بانک رو بویسله خود vb.net ایجاد کردم دیگه اون گزینه تغییر collation وجود نداره

ممنون میشم راهنمایی کنید

h_assefi
دوشنبه 16 مرداد 1391, 15:45 عصر
سلام

دوستان من با vb.net یه دیتابیس ایجاد کردم و خاصیت Data Type فیلد هامو روی sql_variant ست کردم

حالا وقتی اطلاعات فارسی رو بازخوانی میکنم بعضی ها درست هست و بعضی ها به شکل ؟؟؟؟؟؟؟؟

من قبلا بانک اطلاعاتیمو با sql server 2008 r2 ساخته بودم اونجا یه گزینه داشت به اسم collation وقتی اون رو روی arabic-as-ci میذاشتم دیتابیس بدون مشکل با حروف فارسی کار میکرد اما الان که بانک رو بویسله خود vb.net ایجاد کردم دیگه اون گزینه تغییر collation وجود نداره

ممنون میشم راهنمایی کنید
بهتره که data type هات را بیشتر از نوع text (متنی) قرار بدی تا به مشکلی مثل این بر نخوری

JaVa
دوشنبه 16 مرداد 1391, 15:48 عصر
چرا از نوع nvarchar(50) قرار نمی دی که دیگه مشکلی با حروف فارسی نداشته باشی

speralda
دوشنبه 16 مرداد 1391, 15:52 عصر
درود

همیشه از ابتدای ساخت DB نوع داده های رشته ای را از نوع nvarchar قرار دهید.

و بهتره که دیگه از text هم استفاده نکنیم چون ماکروسافت می خواهد اون ها رو remove کنه. در ورژن های آینده.

vahid1400
سه شنبه 17 مرداد 1391, 09:48 صبح
درود

همیشه از ابتدای ساخت DB نوع داده های رشته ای را از نوع nvarchar قرار دهید.

و بهتره که دیگه از text هم استفاده نکنیم چون ماکروسافت می خواهد اون ها رو remove کنه. در ورژن های آینده.

دوستان nvarchar(max هم کردم باز دیتا هایی مه save میکنم به صورت ???????? هست

چه کنم؟

hakim22
سه شنبه 17 مرداد 1391, 14:31 عصر
همون nvarchar درسته اما شما زیادی با collation ها ور رفتید !
کلا اونهایی که مخفف as دارند یعنی asci که زبان فارسی رو پشتیبانی نمی کنند ( هر عربی که عربی نیست !)

vahid1400
سه شنبه 17 مرداد 1391, 15:36 عصر
همون nvarchar درسته اما شما زیادی با collation ها ور رفتید !
کلا اونهایی که مخفف as دارند یعنی asci که زبان فارسی رو پشتیبانی نمی کنند ( هر عربی که عربی نیست !)

من تو ویندوز قبلیم sql server 2008 r2 نصب کردم و اونجا با collation ها ور رفتم و اتفاقا اون موقع مشکلی نداشتم

الان 7 نصب کردم و فقط vb.net 2010 نصب کردم هر چی گشتم دنبال منوی انتخاب collation پیداش نکردم تو vb بنابراین تغییری هم درش ایجاد نکردم

کامبیز اسدزاده
چهارشنبه 18 مرداد 1391, 05:52 صبح
دوست عزیز شما در قسمتی که فیلدهاتون هستن Charset رو روی utf8 قرار بده قول میدم که مشکلت حل میشه :) فکر کنم تنها utf8 یا utf8 general ci باشه.

vahid1400
چهارشنبه 18 مرداد 1391, 10:04 صبح
دوست عزیز شما در قسمتی که فیلدهاتون هستن Charset رو روی utf8 قرار بده قول میدم که مشکلت حل میشه :) فکر کنم تنها utf8 یا utf8 general ci باشه.

میشه بگید این قسمت دقیقا کجا هست؟