PDA

View Full Version : سوال: مشکل حرف ی در ADO و SQLServer



naderanhari
شنبه 30 مرداد 1395, 20:28 عصر
باسلام
از دلفی XE6 استفاده میکنم. با ADOConnection به بانک اطلاعاتی SQL Server تحت وب وصل شدم.
مشکل توی ذخیره حرف ی در وب هستش. وقتی اطلاعات رو ذخیره میکنم به جای حرف ی حرف ي ذخیره میشه.
برای حل این مشکل چیکار کنم؟
لطفا کمکم کنید.
ممنون

khoshblagh
یک شنبه 31 مرداد 1395, 00:12 صبح
با سلام
کافی است که کولشن بانک مربوطه و یا فیلد مربوطه به COLLATE Persian_100_CI_AI تغییر دهید.

naderanhari
دوشنبه 01 شهریور 1395, 19:34 عصر
دقیقا این گزینه داخل بانک اطلاعاتی تنظیم هست .... ولی باز هنگام ذخیره ي ذخیره میشود.
به نظر میرسد گزینه ای باید داخل ConnectionString تنظیم شود تا اطلاعات فارسی را را دقیقا به وب منتقل کند.
جالب اینکه در هنگام جستجو مشکلی پیش نمی آید و با ی معمولی هم جستجو انجام میشود یعنی فرقی بین ی و ي قائل نمیشود.
اگر از دوستان کسی تجربه ای دارد در این مورد دارد لطفا راهنمایی فرمایید.

naderanhari
چهارشنبه 03 شهریور 1395, 19:28 عصر
با قرار دادن کلمه N قبل از مقادیر در دستورات SQL مشکل فارسی حل میشه .... حتی تو حالت هایی که علامت ؟ هم بجای حروف ثبت میشه از این تکنیک استفاده میشه
ضمن تشکر از همه دوستانی که پاسخ دادن :چشمک:
مثال:


sqlstring:= 'INSERT INTO INCOMINGLOG ([MESSAGE]) VALUES(N''' + data + ''')';y

danesh1351
یک شنبه 05 دی 1395, 20:48 عصر
سلام
من خودم این مشکل رو داشتم
یک applicationEvent رو فرم اصلی برنامه بزار
در قسمت onmessage آن متن ذیل رو تایپ کن
مشکل حرف ک و ی و هر چی بخوای در هنگام ورود اطلاعات حله
البته برای هر حرف باید کد حرف رو جایگزین کنی

if Msg.wParam=1705 then Msg.wParam:=1603; //*** Letter "ک" is ك ***
if Msg.wParam=1740 then Msg.wParam:=1610; //*** Letter "ی" **
این کد ک و ی فارسی رو با عربی جایگزین میکنه
میتونی عکسش رو انجام بدی
بای