PDA

View Full Version : مشکل insert کردن در بانک اس کیو ال



arshia_
جمعه 22 آبان 1383, 13:37 عصر
سلام
من برای ثبت اطلاعات در بانک اس کیو ال با یک مشکل برخورد کردم
تمام اطلاعاتی که وارد بانک می کنم بصورت علامت سوال ثبت می شوند...
توضیح اینکه این اشکال فقط در هنگام ثبت اطلاعات فارسی وجود دارد و بدون مشکل اطلاعات انگلیسی ثبت می شود...
مشکل از چیست؟؟؟
برنامه ؟ کد...؟؟؟؟ سیستم ؟؟؟

Pooya_sh
جمعه 22 آبان 1383, 13:56 عصر
سلام
قبل از اطلاعاتت یه حرف N بنویس .این درواقع به معنای اینه که اطلاعاتت در فیلدی که از نوع Nvarchar هستش به صورت یونیکد ذخیره بشه

insert into Table1(clm1,clm2)values(N'value1,N'value2')

arshia_
جمعه 22 آبان 1383, 16:37 عصر
کد من به صورت زیر است:


Dim StrSignin As String = "insert into ectblmembers(firstname) values (N' یک تست است') "
Dim cmdSignin As New SqlClient.SqlCommand(StrSignin, SqlConnection1)
SqlConnection1.Open()
SqlConnection1.Close()

اما باز هم جواب نداد...
بعد از اضافه کردن حرف ان
سیستم هیچ مقداری را ذخیره نمی کند...

Vahid_Nasiri
جمعه 22 آبان 1383, 16:41 عصر
این مقاله رو مطالعه کنید : http://www.barnamenevis.org/forum/viewtopic.php?t=14450
+ نوع فیلد شما هم باید یونیکد را ساپورت کند مانند nvarchar و امثال آن که در مقاله گفته شده.

Pooya_sh
جمعه 22 آبان 1383, 17:06 عصر
شاید collectione دیتابیستون برای ساپورت یونیکد تنظیم نشده ؟یه چک بکنی بد نیست . :wise1:

arshia_
شنبه 23 آبان 1383, 09:59 صبح
ممنون از دوستان...
تقریبا درست شد...
ممنون از راهنمایی همه

arshia_
سه شنبه 26 آبان 1383, 10:59 صبح
شاید collectione دیتابیستون برای ساپورت یونیکد تنظیم نشده ؟یه چک بکنی بد نیست

از راهنمایی دوستان ممنونم..راستی یه سوال ...
آیا بعد از نصب sql می تویم تنظیمات collectione رو عوض کنیم یا اینکه فقط موقع نصب این امکان وجود داره؟؟؟
و آیا این امکان در تمام نسخه های کلاینت و سرور pro ..enterprise ,...‌وجود داره؟؟

Vahid_Nasiri
سه شنبه 26 آبان 1383, 12:40 عصر
بله. همه جا می شود عوض کرد آنرا :


[fcode] [nvarchar] (50) COLLATE Arabic_CI_AS NOT NULL

بجای عربی ، موارد معتبر دیگری مانند لاتین و ... را هنگام ساخت فیلدها می توان وارد کرد.

arshia_
سه شنبه 26 آبان 1383, 16:15 عصر
باز هم ممنون :flower: