السلام عليكم ورحمة الله ..
أخواني مثل ما هو واضح بالعنوان .:
مالفرق بين nvarchar و varchar؟
الي أعرفة أن nvarchar خاصة باللغة العربية ..ولكن جربت الاثنين كلهم يخزنون باللغة العربية + الأنجليزية بدون مشاكل !!!
فما هي المشكلة بالضبط بارك الله فيكم ..
السلام عليكم ورحمة الله ..
أخواني مثل ما هو واضح بالعنوان .:
مالفرق بين nvarchar و varchar؟
الي أعرفة أن nvarchar خاصة باللغة العربية ..ولكن جربت الاثنين كلهم يخزنون باللغة العربية + الأنجليزية بدون مشاكل !!!
فما هي المشكلة بالضبط بارك الله فيكم ..
للأسف والله استاذي الغالي حزوووم ..
الانجليزية ميح :( "يعني مافيه لغة انجليزية أبداً :("
اذا ممكن تعطيني الفكرة بالعربي استاذي الكريم .. أو اذا الموضوع يطول شرحه أيهم أختار ؟؟:( ..
في حفظ الله استاذي الكريم ..
باختصار ال n هي لل unicode وبدون n للآسكي
في الويندوز صفحة الكود تأخذ الارقام من 0 الى 255 . تحتل الاحرف اللاتينية والاحرف الاساسية الارقام من 0 الى 127 اما باقي الارقام من 128 الى 255 فتعتمد على اللغة المستخدمة في الجهاز ان كانت عربي فهذه تكون الابجدية العربية وان كانت فرنسي فتكون الابجدية الفرنسية وهكذا
في ال varchar لا يمكن التخزين الا من 0 الى 255 اي اللغة الانجليزية ولغة اخرى اما في nvarchar فيمكن تخزين اي لغة والدمح بين اللغات
لمزيد من التوضيح
حرف الباء (ب) رقمه 200 اي ascii =200 واليونيكود له 1576
وفي اليونانية الحرف И رقمه 200 والينيكود له 1048
عند تخزين حرف الباء في varchar ستخزن القيمة 200
وفي nvarchar تخزن 1576
طبعا على جهازك لانه عربي لا يوجد فرق لكن لو احد ما فتح قاعدة البيانات على جهاز يوناني على سبيل المثال سيظهر في حقل varchar الحرف И
اما عند استخدام اليونيكود سيظهر الحرف كما هو بسبب طريقة التخزين المختلفة لكل حرف
هذا الموضوع مغلق.