الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الرجاء اقتراح افضل Data Type لهذا السيناريو

بدأه ahmedsamirragab في 19 أبريل 2009 · 5 رد · 637 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه ،،

السيناريو عبارة عن برنامج مخازن يكون فيه كود الصنف يدل على اسم الصنف وبياناته كما يدل على كود المورد وكود المصنع

بمعنى 100/1 اي الصنف رقم 100 من المورد رقم 1 ؛100/2 اي نفس الصنف من المورد 2

هل اصممه ك سترنج ولكنه سيكون ابطئ قليلا عند عمل بحث عن منتج بالكود عن ما اذا كان انتجر

الرجاء المشورة

وهل ستؤثر "/" على طباعة البار كود؟؟

لكم جزيل الشكر؛؛

اخوكم

#2

طيب طالما مفيش اجابة؟؟

ممكن اي اقتراح او فكرة لحل المشكلة؟؟

#3

أخي الفاضل أحمد

السلام عليكم ورحمة الله وبركاتة

أولاً : - DataType من نوع Int لن تقبل معاك اي / أو سلاشات في الكود لذلك اذا كنت ستكتب الكود بهذه الطريقة 100/1 فان سيكوال سيرفض قبول هذا البيان وذلك عند استخدامك نوع البيانات int وحاول تجربتها بنفسك . . .

علاوه علي ذلك فأنه يأخذ أرقام صحيحة سالب أو موجب وبيكون بين - 2,147,483,648 حتي 2,147,483,647

مش عارف أنطقه لكن أعتقد أنه تخطي عدد اللمبات فى المنطقة – حجمه 4 بايت .

النوع Char : يعني حرف ، وهو عبارة عن نوع يجعل حقل البيانات يتقبل عدد معين من الحروف من 1 إلى 8000 حرف

القيمة الافتراضية لعدد الحروف التي يضعها اصدار 2005 هى 10 حروف

- النوع Nchar : يأخذ حروف ولكن حروف من النوع Unicode أي يمكن تخزين كل اللغات وليست اللغة الإنجليزية فقط وهو يتحمل من 1 إلى 4000 حرف حيث الحرف فيه يأخذ مكان حرفين من النوع char

القيمة الافتراضية لعدد الحروف التي يضعها اصدار 2005 هى 10 حروف

- النوع Varchar : يأخذ من 1 إلى 8000 حرف – لكن حجمه بخلاف الأنواع السابقة غير ثابت حيث يكون حجمه حسب عدد الحروف التي فيها – بمعنى أنه لا يحجز مساحة للحروف الغير موجودة بعكس Char وأقصى عدد يأخذه هو العدد الذى وضعته له .

- النوع (Varchar(max : مثل Varchar يأخذ 8000 حرف حيث يكون حجمه حسب عدد الحروف التي فيه .

النوع Nvarchar : نفس : مثل Varchar لكن ياخد حروف Unicode ولذلك هو يقبل 4000 حرف فقط لان كما قلنا في النوع Nchar الحرف فيه بحرفين بسبب Unicode بحرفين .

- النوع (Nvarchar(max : مثل النوع (Varchar(max لكن بيأخذ حروف Unicode وأيضاً هو يقبل 4000 حرف فقط لان كما قلنا الحرف بحرفين .

- النوع Text : وهو يأخذ عدد حروف حتى 2 جيجا بايت

لكن من الخطأ فعل ذلك – فتخزين مثل هذا الحجم داخل خلية حقل واحد مع الاستخدام سيكون هناك بطئ فى القراءة

هناك حلول كثيرة لهذا الأمر .

لكنه مهم في حالة لو عدد الحروف سيتعدى 8000 حرف .

- النوع Ntext : مثل النوع Text لكن يخزن الحروف كــــ Unicode

طبعاً طالما هيكون Unicode والحرف بحرفين إذن سيكون حجمه أقصاه 1 جيجا

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#4

بارك الله فيك اخي على الرد والشرح الوافي

ولكن اتمنى لو تقترح ما هو الحل الانسب لمثل ذلك الموقف؟؟وهل لو تم عمله nvarchar ووضع / سيؤثر على طباعة الباركود ام لا؟

جزاكم الله خيرا على الاهتمام

#5

كنت اظن من خلال الشرح تستطيع اتخاذ القرار

عموماً

انا افضل

اقتباس
النوع Varchar : يأخذ من 1 إلى 8000 حرف – لكن حجمه بخلاف الأنواع السابقة غير ثابت حيث يكون حجمه حسب عدد الحروف التي فيها – بمعنى أنه لا يحجز مساحة للحروف الغير موجودة بعكس Char وأقصى عدد يأخذه هو العدد الذى وضعته له .

وان شاء لن تؤثر علي اي شيء

تم تعديل هذه المشاركة بواسطة محمد فؤاد تركي في 20 أبريل 2009 في 20:38

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#6

جزاكم الله خيرا اخ محمد وبارك الله فيك

مواضيع مشابهة