PDA

View Full Version : اندازه Varchar



zohreh.hn
یک شنبه 03 آذر 1392, 20:25 عصر
سلام
یک سوال: من یک فیلد title در مای اس کیو ال در یک دیتا بیس دارم که در سایت بصورت نصفه نمایش میدهد
نوعش varchar 500 هست
مثلا عنوان هست رویدادهای میراث فرهنگی و گردشگری که بصورت رویدادهای میراث فرهنگی و گردشگ
نشان می دهد و هرچقدر هم اندازه اش را بیشتر می کنم بازهم تاثیری ندارد لطفا اشکالم را بگویید کجاست:عصبانی:

abolfazl-z
یک شنبه 03 آذر 1392, 20:29 عصر
سلام
تا زمانی که کدتان را قرار ندهید نمی توانیم مشکلتون را حل کنیم !

rezaonline.net
یک شنبه 03 آذر 1392, 21:14 عصر
طول varchar نهایتا 255 میتونه باشه .
بهتره در مورد دیتاتایپ ها کمی مطالعه کنید .
اگر برای محتوای مطالب میخواید ذخیره کنید از نوع text استفاده کنید .

smksmk
دوشنبه 04 آذر 1392, 09:23 صبح
دوست عزیز 0 تا 255 برای ورژن 5.0.3 از mysql هست و برای ورژن های بالاتر mysql میتونید از 0 تا 65535 کاراکتر تعیین کنید و در دیتابیس هم ذخیره کنید . پس مشکل از ورژن mysql هم هست !
ولی مشکل اصلی شما encoding متنی هست که میخاین توی دیتابیس ذخیره کنین ، 100% utf8 نیست که این مشکل پیش میاد چون تا 500 کاراکتر برای عنوان زیاد هم هست و این که نشون نمیده یعنی ذخیره نمیکنه .

rezaonline.net
دوشنبه 04 آذر 1392, 12:35 عصر
دوست عزیز 0 تا 255 برای ورژن 5.0.3 از mysql هست و برای ورژن های بالاتر mysql میتونید از 0 تا 65535 کاراکتر تعیین کنید
مـــنـــبـــع؟

H:Shojaei
دوشنبه 04 آذر 1392, 13:47 عصر
سلام
نوع varchar اگر مقداري بيشتر از 255 بهش نسبت داده بشه نوعش به text تغيير ميكنه. (http://www.w3schools.com/sql/sql_datatypes.asp)
و
اين لينك كه گفته: (http://www.w3resource.com/mysql/mysql-data-types.php)
varchar:
A value from 0 to 255 before MySQL 5.0.3, and 0 to 65,535 in 5.0.3 and later versions.
و اينم خود Mysql (http://dev.mysql.com/doc/refman/5.6/en/storage-requirements.html)
مثل اين كه بايد علاوه بالا بردن سطح اطلاعاتي به روز هم باشيم من كه خيلي چيزا همين الان ياد گرفتم :D
البته ببخشيد من ديدم جالبه رفتم دنبالش اينا رو هم گذاشتم استفاده بشه...

smksmk
دوشنبه 04 آذر 1392, 14:36 عصر
سلام ، الان به تاپیک سرزدم ، منبع که دوستمون در بالا گفتند و فکر نمیکنم مشکلی باشه ، در ضمن برای utf8 هم 21,844 کاراکتر هست که در منبع mysql در پست قبلی هست .

rezaonline.net
دوشنبه 04 آذر 1392, 15:19 عصر
بله ظاهرا افزایش یافته ، اما 65535 کاراکتر نیست و بایت هست ، هر کاراکتر utf8 ، سه بایت حافظه میگیره .
خود varchar به خاطر نگه داری طول رشته ، یک بایت دیگه هم مصرف میکنه .

در هر صورت ممنون از اطلاعات دوستان .