PDA

View Full Version : مشکل encoding در سی شارپ



zinat1356
سه شنبه 14 شهریور 1391, 14:28 عصر
سلام
من یه برنامه با سی شارپ می نویسم دیتا بیس توی خود سی شارپ تعریف کردم حالا وقتی داده فارسی insert می کنم یا حتی دستی هم داده وارد می کنم بجای دیتای مورد نظر علامت سوال می ذاره
کسی اگه اطلاع داره لطفا راهنماییم کنه

ممنون

uniqueboy_ara
سه شنبه 14 شهریور 1391, 14:33 عصر
نوع فیلد مورد نظر رو nVarchar انتخاب کنید

aminaltavista
سه شنبه 14 شهریور 1391, 17:23 عصر
نوع فیلد مورد نظر رو nVarchar انتخاب کنید

سلام

اتفاقا من هم به تازگی به یه همچین مشکلی برخوردم که هنگام ویرایش اطلاعات نه ذخیره (در هنگام ذخیره درست کار میکنه) سه تا از مقادیرم که فارسی هستند رو با علامت سوال نشون میده !
ضمنا دیتابیسم جداگونه هست و نوع فیلدام هم(nvarchar(50 هست اما باز موقع ویرایش اطلاعاتم به صورت علامت ؟ هستند.

uniqueboy_ara
سه شنبه 14 شهریور 1391, 17:40 عصر
من خودم همیشه تحلیل و طراحی پروژه م رو با نرم افزار Power Designer انجام میدم، و در آخر مدل دیتابیسم رو به صورت Script برام خروجی میده! جالب اینجا بود که وقتی با اون Script، دیتابیس رو میساختم دقیقا همین مشکل شما برام پیش میومد، بعد که رفتم و به Script یه نگاه دقیق تر انداختم دیدم که همه او فیلد هایی که ؟؟؟ به من خروجی میدن از نوع nChar تعریف شده بود که با تغییرش به nVarchar تمام مشکلاتم حل شد.

hamid_hr
سه شنبه 14 شهریور 1391, 19:41 عصر
تو sql 2008 بايد داخل يك N به صورت زير استفاده كنم

insert into tbl1 (id,name)values (1,N'نام')

kkkaka
سه شنبه 14 شهریور 1391, 19:58 عصر
شما باید هنگام ایجاد بانکتون Collation رو روی زبان پارسی تنظیم کنید.
Option/collation
Persian_100_CI_AI

uniqueboy_ara
سه شنبه 14 شهریور 1391, 20:16 عصر
ولی طبق توضیحات خود msdn نباید مشکلی در وارد کردن اطلاعات فارسی، داخل فیلد هایی از نوع nVarchar به وجود بیاد، چون این نوع داده اساسا برای ذخیره مقادیر Unicode ایجاد شده!



nvarchar [ ( n | max ) ]
Variable-length Unicode string data. n defines the string length and can be a value from 1 through 4,000. max indicates that the maximum storage size is 2^31-1 bytes (2 GB). The storage size, in bytes, is two times the actual length of data entered + 2 bytes. The ISO synonyms for nvarchar are national char varying and national character varying