PDA

View Full Version : سوال: مشکل در نوشتن فارسي در برنامه دلفي



ehsanbn
چهارشنبه 20 آبان 1388, 12:18 عصر
با سلام خدمت دوستان گرامي

من يک برنامه اي نوشتم همراه با ديتابيس در sql. هر وقت که ميخواهم رکوردي را به ديتابيس اضافه کنم يا رکوردي را اصلاح نمايم،نمي توانم فارسي بنويسيم اين مشکل فقط در برنامه دلفي 2009 وجود داره و در ديتابيس sql server 2008 چنين مشکلي ندارم. تمام نوشته هاي فارسي در برنامه دلفي 2009 به شکل علامت سوال (؟) در مي​آيند. مشکل از کجاست و چکار بايد انجام بدهم.

Tiam121
چهارشنبه 20 آبان 1388, 13:12 عصر
معمولا اين اشكال از font هستش پيشنهاد ميكنم از فونت tahoma استفاده كن

ehsanbn
پنج شنبه 21 آبان 1388, 11:08 صبح
دوست گرامي وقتي که ميخواهم اطلاعات را وارد جدول dbgrid کنم فارسي مي نويسه ولي در جدول dbgird هست که نوشته هاي فارسي را با علامت (؟) نشان مي دهد. در ضمن وقتي که در sql 2008 و در جدول مربوطه فارسي مي نويسيم مشکلي ندارد.

benyaminrahimi
جمعه 22 آبان 1388, 20:20 عصر
یا ویندوزت درست فارسی نشده
و یا colletion معتبر برای data base ست نکردی

ehsanbn
جمعه 22 آبان 1388, 21:31 عصر
منظور شما از اينکه ميگوييد ويندوز درست فارسي نشده چيست و اگر ميشه در مورد Colletion توضيح بيشتري بدهيد.

حسین شهریاری
شنبه 23 آبان 1388, 09:39 صبح
منظور شما از اينکه ميگوييد ويندوز درست فارسي نشده چيست و اگر ميشه در مورد Colletion توضيح بيشتري بدهيد.

تمام مواردی که دوستان فرمودن میتونه به نوعی درست باشه!!
1-ویندوز درست فارسی نشده یعنی اینکه در کنترل پانل باید گرینه های مربوط به فارسی ویندوز را درست تنظیم کرده باشید مخصوصا تب Advanced که اکثرا اونا تنظیم نمیکنند

2-Colletion یعنی همان چهار چوب زبانی که اگه توجه کرده باشید زمانی که میخاین یه پایگاه داده جدید ایجاد کنید زیر اون قسمتی که نام پایگاه را میدید یه جایی هستش که نوشته:Colletion name که بهتر بود اون موقه شما اونا روی یکی از مقادیر Arabic تنظیم میکردید

البته فکر نکنم وقتی پایگاه داده ساخته شد دیگه بشه Colletion name را تغییر داد ولی حس میکنم را زیر جواب شما باشه:

1-یه Backup از پایگاه تهیه کنید
2-پایگاه جاری را Delete کنید
3-یه پایگاه با همان نام قبلی توسط گزینه New Database ایجاد و همون موقه Colletion name اونا Arabic قرار بدید.

حسین شهریاری
شنبه 23 آبان 1388, 10:43 صبح
:قهقهه:ببخشید فراموش کردم
4-در آخر نیز Backup را Restory کنید

موفق باشید

young_man1365
شنبه 23 آبان 1388, 12:32 عصر
البته بعد از ساخت پایگاه با ALTER میشه collation جداول رو تغییر داد. مثلا" کوئری زیر collation جدول sample رو به UTF-8 تغییر میده. کوئری MYSQL


ALTER TABLE sample CHARACTER SET utf8 COLLATE utf8_persian_ci ;

واسه sql server که فرمودید، طرز کار فرقی نمیکنه و جزییات collation هست که باید مطابق sql server تنظیم بشه.
اگه توی فرم دلفی میتونی فارسی تایپ کنی و اطلاعات هنگام بازخوانی از پایگاه ناخواناست، پس مشکل از collation پایگاهه و تنظیمات ویندوز مشکلی نداره.

ehsanbn
یک شنبه 24 آبان 1388, 18:10 عصر
کارهايي که گفتيد انجام دادم و مشکل حل شد، به نظرم مشکل از همان Collation ديتابيس بود.