PDA

View Full Version : سوال: مشکل مرتب سازی با حرف (ک)



ehsan2007
سه شنبه 17 آذر 1388, 17:31 عصر
سلام به دوستان
من برنامه تحت وب خودمو نوشتمو کامله دوتا سوال دارم
یکی اینکه وقتی من مرتب سازی میکنم تمام افرادی که فامیلشون (ک) داره در مرتب سازی آخر میان Collation هم Arabic_CI_AS هستش

و سوال دوم من برای پسورد ها هر چی کوئری میگیرم فرقی بین حروف کوچیک و بزرگ نمیزاره sql server باید چیکار کنم
مثلا کاربر اگه پسورد asdf رو بزنه یا AsDf هیچ تفاوتی نمیکنه واسه sql server

شاپرک
چهارشنبه 18 آذر 1388, 10:19 صبح
چون حرف "ك" دو نوع داريم :
يكي با Ascii=152 --> "ك"
و Ascii=223 "ک"


Arabic_CI_AS يعني =>
case-insensitive (CI)
accent-sensitive (AS)

AminSobati
چهارشنبه 18 آذر 1388, 14:40 عصر
سلام دوست عزیزم،
برای فیلد Password میتونین یک Collation که Case Sensitive هست انتخاب کنید. در غیر اینصورت موقع مقایسه Collation رو تحمیل کنید:

where Passwordcol collate arabic_cs_ai = userentry collate arabic_cs_ci

ehsan2007
چهارشنبه 18 آذر 1388, 16:49 عصر
چون حرف "ك" دو نوع داريم :
يكي با Ascii=152 --> "ك"
و Ascii=223 "ک"


الان من هر چی Collation عوض کردم هیچ تفاوتی نکرد
وقتی کوئری میگیرم فردی که فامیلش مثلا کمالی هست آخر از همه میاد
اگه میشه راهنمایی کنید یک Collation میخوام که حروف بزرگ و کوچیک واسش متفاوت باشه و مرتب سازی رو هم به درستی انجام بده
اینارو هم تست کردم ولی تفاوتی نکرد
SQL_Latin1_General_CP1256_CS_AS
Latin General
و چند تای دیگه ولی هیچ فرقی نکرد!!

ahrimaneahurai
پنج شنبه 19 آذر 1388, 10:03 صبح
سلام دوستان
منم مشکل تو حرفای "ی" و "ک" دارم.کلا مشکل با حرفای چند شکلی.من یه جدول دارم که یه سری اطلاعاتش واسه سال 83و84 هست و کد حرف "ک" با کد حرف "ک" های جدید فرق داره .حالا موقع کوئری گرفتن اطلاعات درست رو نمیده.ممنون میشم راهنمایی کنید

saied_genius
پنج شنبه 19 آذر 1388, 12:44 عصر
به نظر من حروف دوشکلي را در کل اطلاعات با يک کوئري replace جايگزين کنيد.

موفق باشيد.

ahrimaneahurai
جمعه 20 آذر 1388, 18:18 عصر
دوست عزیز اگه دیتا بیس یک وب سایت باشه که اطلاعات هر روز واردش میشه چی ؟ اون رو چی کار کنیم ؟

saied_genius
جمعه 20 آذر 1388, 22:35 عصر
پس ، به نظر من بهترين حالت اينه که اطلاعات زماني که مي خواهند وارد ديتابيس شوند replace شوند و وارد ديتابيس شوند.