PDA

View Full Version : سوال: ذخیره شدن خودکار فاصله در فیلد ها



pooyan3000
یک شنبه 27 تیر 1389, 14:58 عصر
من وقتی در c# با sqlserver کار می کنم اگه یه فیلد رشته 40 کاراکتری در نظر گرفته باشم و بخوام فقط یک رشته مثلاً ali رو داخل اون قرار بدم بقیه ی کاراکتر های فیلد رو با فاصله پر می کنه. مشکل کجاست؟

voodoo01
یک شنبه 27 تیر 1389, 15:02 عصر
رکورد شما با Ali و 37 عدد فضای خالی ذخیره میشود
از نوع char تعریف شده
نوع فیلد را از NVARCHAR تعریف کنید
مشکل شما حل میشود

pooyan3000
یک شنبه 27 تیر 1389, 15:06 عصر
رکورد شما با Ali و 37 عدد فضای خالی ذخیره میشود
از نوع char تعریف شده
نوع فیلد را از NVARCHAR تعریف کنید
مشکل شما حل میشود


متشکر. char, nchar و nvarchar چه تفاوتی با هم دارند؟

توی VS به nvarchar ایراد میگیره. میگه نمیشه از این فیلد برای ویرایش و درج استفاده کرد

voodoo01
یک شنبه 27 تیر 1389, 15:12 عصر
دوست عزیز این لینک help بسیار کوچک و جامع همه چیزو روشن کرده
http://msdn.microsoft.com/en-us/library/ms186939.aspx


با احترام فراوان
VooDoo

pooyan3000
شنبه 02 مرداد 1389, 09:07 صبح
برای nvarcahr هم باز این مشکل پیش میاد. از طریق application که داده در جدول ذخیره میشه به جای فضای باقیمانده فاصله ذخیره می کنه.
شرمنده:عصبانی:

Shahram_Shobeiri
شنبه 02 مرداد 1389, 09:16 صبح
اگه تو db نوع ستون رو nvarchar کرده باشی نباید این مشکل پیش بیاد. حالا برای امتحان هم که شده رشته ارسالی به پارامتر sql رو در سی شارپ trim کن شاید مشکل حل بشه

pooyan3000
شنبه 02 مرداد 1389, 09:51 صبح
منم همین کارو می کنم. بازم فاصله داره.

pezhvakco
شنبه 02 مرداد 1389, 10:04 صبح
درود :
چه طوری متوجه می شی که فضای خالی داره ؟
دستورات ذخیره و نمایش اطلاعات رو چه طوری نوشتی ؟

فکرخوش .

pooyan3000
شنبه 02 مرداد 1389, 10:20 صبح
از stp استفاده کردم. و وقتی توی text box، bind میشن و متد selectall() روی اونها اجرا میشه هر 40 کاراکتر انتخاب میشه.