Carzy Programmer

أكتوبر 21, 2006

نظرة سريعة على Microsoft SQL Server

يندرج تحت تصنيف : SQL Server — CarzyProgrammer @ 2:04 م

Microsoft SQL Server هو خادم لقواعد البيانات يتمتع بامكنيات كبيرة واهمها امكانية التعامل معه من خلال كل لغات البرمجة المعروفه. كذلك يمكن استخدامه في البرامج المحلية (اي ان البرنامج وقاعدة البيانات تكونان على نفس الجهاز) او في برامج الويب Web Applications.
في الاصل التعامل مع Microsoft SQL Server يتم عن طريق المحث Command Line إلا انه هناك اداة تسمى SQL Server Management Studio تتيح واجهة رسومية Graphical User Interface للتعامل مع قواعد البيانات, وهو ما سأستخدمه في الشرح بأذن الله.
لمن لم يجد عنده SQL server Management Studio يمكن تحميل نسخة مجانية من موقع مايكروسوفت
هنا.
عند فتح SQL server Management Studio لأول مرة تظهر نافذة الدخول Connect to Server وفيها يطلب اسم مستخدم وكلمة مرور. ولكن لأن هذا الخادم موجود على جاهزي فهناك خيار اسمة Windows Authentication اي انه يدخل إلى الخادم من خلال بيانات المستخدم الخاصة بنظام ويندوز لديك.



بالطبع اذا كان الخادم ليس على جهازك فيجب ان يعطيك مدير قاعدة البيانات Database Admin. اسم مستخدم وكلمة مرور.
بمجرد دخولك إلى الخادم تظهر لك نافذة بها المكانيات الموجودة بالخادم. لن اتطرق إلى التفاصيل المملة في هذة المرحلة ولكن في مرة قادمة ربما افعل.
ستهتم كثيرا بنافذة الـ Object Explorer التي تظر في اقصي اليسار, ففيها استعراص كامل لما يمكنني التعامل معه في الخادم (تذكر انه ليس كل شئ متاح لي فهناك صلاحيات!).



اول فرع في الشجرة هو Databases وفيها يظهر جميع قواعد البيانات التي يمكنني التعامل معها في هذا الخادم. اول شئ نفعله هو اضافه قاعدة بيانات جديدة وذلك بكليك يمين على كلمه Databases ثم نختار New database



يظهر مربع خيارات قاعدة البيانات الجديدة اكتب اسمها واسم المستخدم (يفضل تركه كما هو في هذه المرحلة) ثم اضغط OK فظهر قاعدة البيانات الجديدة




وكما ترى فهي فارغة لا يوجد بها اي جداول. وكي تنشأ جدولا, اضغط كليك يمين على كلمة Tables ثم اختر New Table فتظر النافذة الخاصة بامكانيات الجدول وخاناتة.




وهي تحتوي على مكان لإضافة الاعمدة(في الوسط) وخصائص كل عمود (اسفلها) كما توجد خصائص الجدول على اليمين.



سأبدا بإضفة عدد من الاعمدة. نلاحظ ان كل عمود يحتاج إلى 3 اشياء كي يتم انشاءة

1- اسم
2- نوع بيانات
3- امكانية تركه فارغا
اما الاسم فهو اسم العمود, وامكانية تركه فارغا ان تحدد اذا ما كان مسموحا ادخال صف جديد من البيانات (يسمى سجل Record) وترك ذلك العمود فارغا.



اما نوع البيانات, فهو نوع البيانات المسموح وضعه في ذلك العمود.
حالما تنتهي من وضع الاعمدة التي تريدها اضغظ زر حفظ الكل Save All (او اختارها من قائمة File ) سيسألك عن اسم الجدول, ضع له اسما ثم OK




يظهر الجدول الجديد في الـ Object Explorer . لوضع بيانات به نضغط كليك يمين عليه ثم نختار Open table لتظهر لنا نافذة استعراض الجدول.




يمكنك بعدها إضافة البيانات التي تريدها…. واهلا بك في عالم قواعد البيانات!!!


مقدمة في قواعد البيانات

يندرج تحت تصنيف : Database — CarzyProgrammer @ 1:56 ص

اي نظام برمجي يتكون في الأساس من مكونان
1- اوامر
2- بيانات او معلومات
وتقو الاوامر بدور المايسترو في التعامل مع البيانات وتنفيذ العمليات عليها. ومنذ ظهرت الاغراض المتقدمة للحاسب (بعيدا عن كونه اله حاسبة او ما شابه :D ) ظهرت الحاجة إلى حفظ البيانات ومن ثم ظهرت التنكونوجيات الخاصة بحفظ البيانات. وتطورت من الاشرطة المثقبة Bunched Tapes حتي الأقراص المدمجة CD مرورا بالديسكات والهارد … إلخ.
كل تلك التعاملات تتم مع الجزء الصلب, ولأن مادية الحاسب Hardware لا يمكن فصلها عن البرامج Software فقد ظهرت الحاجة لتتوير نظم حفظ البيانات.
في البداية كانت الملفات في الملاذ الاول والاخير في حفظ البيانات, حتي ظهرت عيوبها, فالحفظ في الملفات له كثير من العيوب
1- صعوبة التعامل مع الملافات داخل البرامج
2- كثرة الاخطاء
3- صعوبة ترتيب البيانات داخل الملفات
ووقتها كان على المبرمج ان يقضي معظم وقته في وضع طريقه للتعمال مع الملفات في برنامجه مما كان يشكل عقبة كبيرة, ولذلك ظهرت قواعد البيانات.
التعريف العام لقاعدة البيانات هي مجموعة من الجداول تحمل كما معينا من البيانات. والتاعمل معها يكون بالتعامل مع البيانات مباشرة فأنت ليت في حاجة ان تعرف كيف تحفظ هذه البيانات او اي شئ من هذا…. ولكن كيف حدث ذلك؟
حدث ذلك عن طريق التقسيم, فلأن كل برنامج كان ينقسم إلى جزئين (جزء البرمجة العادية وجزء العمل مع الملفات) فقد وفرت شركات البرمجيات حل قواعد البيانات لإراحة المبرمجين من التعامل مع الملفات, فقط قل لقاعدة البيانات ان تحفظ البيانات هذه فتحفظها وهذا كل شئ.
داخليا, تنقسم نظم قواعد البيانات إلى قسمين
1- البيانات نفسها
2- خادم قاعدة البيانات Database Server
الاولي مفهومه, ماذا عن الثانية؟
خادم قاعدة البيانات هو برنامج تعكف الشركة المقدمة لقاعدة البيانات (سواء مايكروسوفت او اوراكل او… ) على تطويره بحيث يأخذ البيانات من المبرمج ويضعها في ملفات بطريقة ما مع امكانية استرجاعها.
فأنت عندما تريد حفظ بيانات ما تنادي على الخادم وتطلب منه ان يحفظها فيحفظها, او تطلب منه استرجاع بيانات معينه فيرجعها.
وهناك انواع عديدة من قواعد البيانات مثل Access, Microsoft SQL Server , Oracle والفروقات بينهم عديدة تحتاج إلى مجلدات لذكرها. لكن هناك فرق مهم احب ان اوضحه.
قواعد بيانات اكسيس تنتمي إلى نوع يمسى Desktop databaes او قواعد بيانات سطح المكتب وهي نظم موجهة بالأساس إلى المستخدم العادي فهي لا تحتاج إلى امكانيات عاليه بالحاسب (رام او سرعة او…) كما ان خادم قاعدة البيانات يكون صغير الحجم لأنه سوف يدمج في البرنامج.
اما قواعد البيانات الأخري مثل SQL Server و Orcale فهي تعمل بتكنيك مختلف, فالخادم منفصل تماما عن البرنامج مما اتاح امكانيات كبيرة في التعامل عن طريق الشبكات او حتي الانترنت, فمثلا قد يعمل البرنامج على حاسبي مستخدما قاعدة بيانات موجودة على حاسب اخر ربما يكون في بلد اخرى. كذلك فإن الخادم في هذه الحالة يكون كبير الحجم ويحتاج في العادة إلى حاسب ذو امكانيات اعلى.
بصفة عامة, إذا ما كانت البيانات موجهه نحو حاسب واحد, او كان البرنامج صغيرا فإن Access هو بطل المعركة بلا منافس. (مثل برنامج لتسجيل مبيعات ومشتروات متجر ما)
اما إذا تعددت الأجهزة المستفيدة من نفس البيانات, فإن Access يتوارى خجلا في حضور SQL Server و Orcale (مثل قاعدة بيانات لمطار).
اتمني ان اكون قد ازلت جزء من الغموض عن موضوع قواعدة البيانات
السلام عليكم…

المدونة لدى WordPress.com.