ورود

View Full Version : سوال: فرق char و varchar



farzane_fn
سه شنبه 31 شهریور 1388, 09:09 صبح
دوستای بسیار عزیزم سلام.امید وارم خوب باشین.من یه برنامه ای با دلفی دارم می نویسم و از اس کیو ال کمک گرفته ام می خواستم بدونم فرق بین char و varchar توی اس کیو ال چیه؟ من یه فیلدی دارم به نام sabtid که شماره ثبت کتاب توش ذخیره می شه و شماره ثبت کتاب هم یه فیلد هست که هم دارای کاراکتر حرفی هست و هم عددی و طولش متغیر است بین 10 کاراکتر تا 15 کاراکتر می خواستم بدونم این فیلد رو char تعریف کنم یا var char . متکشر می شم جوابم رو بدین:لبخندساده:

manvaputra
سه شنبه 31 شهریور 1388, 09:28 صبح
يكي از فرقاي char و varchar در ثابت بودن و متغير بودن طولشونه هنگام ذخيره رشته ،به مثال زير دقت كن:
شما يه متغير ساختي به نام Temp از نوع char و طول اون رو مي دي 10 حالا يه متغير ديگه ساختي به نام Temp1 و از نوع Varchar و اينم با طول 10، و به هر دو مقدار TEST رو دادي كه طولش 4 كاركتره در صورتي كه هر دو متغير ما طولشون 10 كاركتره ، حالا مي خوايم ببينيم تفاوت رو، توي TEMP كه از نوع char هست مقدار TEST با همون طول 10 كاركتر ذخيره ميشه 4 تا كه خودشه و 6 تاي بقيه رو بلانك مي ذاره اما توي متغير TEMP1 كه از نوع Varchar هست TEST همون 4 كاركتري ذخيره ميشه با اينكه طول متغير 10 كاركتر هست

behzad_dr
سه شنبه 31 شهریور 1388, 09:29 صبح
دوست خوب ; تفاوت این دو در اینه که char رو اگر هر مقداری تعریف کنی دقیقا اون مقدار از حافظه شما در اختیارش قرار میگیره اما varchar اینطور نیست هر میزانی استفاده کنید همون مقدار از حافظه اشغال میشه ..به طور کلی می تونم بگم فضای هدر رفته داریم توی char .

DlphIran
سه شنبه 31 شهریور 1388, 14:14 عصر
منم يه سوال در همين رابطه بپرسم ،‌ فرق nvar با بقيه چيه ؟