المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : لغةsql



said
10-19-2013, بتوقيت غرينيتش 08:03 PM
موضوع مقدم من منتديات ديزاد
منتديات ديزاد باتنة (http://www.dzbatna.com/vb)
لغة SQL

لا بد أنك قد لاحظت الآن أن هنالك الكثير من العمليات التي تستطيع قاعدة البيانات أدائها، فيمكنها أن تنشأ سجلا أو تحذف سجلات أو تعدل سجلا أو تغير جدولا أو تحذف جدولا وغيرها الكثير، هذه العمليات تجرى بواسطة لغة SQL وهي اختصار لعبارة Structured Query Language أي لغة الاستعلامات البنيوية، تسمى كل عملية تنفذ عن طريق لغة SQL بالاستعلام Query، وعلى حسب لغة البرمجة التي تستخدمها وتحميل برنامج قواعد البيانات الذي تستخدمه فإن الاستعلامات ترسل وتنفذ بطرق مختلفة وكيفية الحصول على نتائج الاستعلام تختلف أيضا، في هذه الدورة لن يهمنا كيف تقوم بإرسال الإستعلام إلى قاعدة البيانات وتنفذه وتحصل على نتائجه، ولكن ما سنتحدث عنه هو كيفية كتابة الاستعلام نفسه، لغة SQL شبه متفق عليها بين جميع نظم قواعد البيانات، على سبيل المثال في موقعنا نستخدم لغة البرمجة PHP للوصول إلى مزود قاعدة البيانات MySQL ، وهي من التوليفات الشهيرة، ومنها أيضا استخدام تحميل برنامج Visual Basic للوصول إلى مزود قاعدة بيانات Microsoft SQL Server لعمل الأحدث برامج التي تتطلب وصولا إلى بيانات مركزية كما في المحلات والأسواق والمخازن والمستشفيات وغيرها، ويمكن استخدام لغة SQL أيضا عن طريق الأحدث برامج المكتوبة بلغة C و C++ و Perl و Delphi للوصول إلى بيانات مخزنة في قواعد بيانات Oracle و Sybase و Informix و IBM/DB2 و Access وغيرها.

مزودات قواعد البيانات

من الطرق الشهيرة لتخزين قواعد البيانات هي وضعها في صور 2014ة ملفات نصية بسيطة Plain ****، بحيث يوضع كل سجل في سطر من أسطر الملف ويفصل بين الحقول المختلفة في كل سجل بفاصلة comma ( , )، وتكون أحيانا في صور 2014ة ملفات أكثر تعقيدا بحيث يحتوي الملف على الكثير من الجداول والفهارس التي تسرع عمليات البحث في قواعد البيانات والاستعلامات الجاهزة والنماذج كما في قواعد بيانات Microsoft Access.






هذه الشرح طريقة طريقة قد تعتبر جيدة في الأحدث برامج البسيطة ولكن في بيئات الشبكات المعقدة والأحدث برامج التي تحتاج وصولا مشتركا إلى البيانات تصبح هذه الفكرة صعبة التطبيق حيث أن ملف البيانات يكون في جهاز المزود، ويتم الوصول إليه عبر الشبكة من قبل الزبون، وفي حالة الملفات الثابتة يجب أن يتم نقل ملف البيانات بأكمله عبر الشبكة حتى يصل إلى الزبون الذي يأخذ المعلومات منه وإذا قام الزبون بتغيير أي من المعلومات فإن المزود يجب أن ينتظر حتى يقوم الزبون بإعادة الملف بعد عمل التغييرات عليه، وهذا أمر يستغرق الكثير من الوقت خاصة إذا كان حجم الملف كبيرا وكانت الشبكة بطيئة، وكذلك إذا أراد أكثر من شخص الوصول إلى البيانات في نفس الوقت وتغييرها في نفس الوقت سيؤدي ذلك إلى عطب البيانات وحدوث خلل فيها، لهذا فإن المزود يقوم بإعطاء الملف لمن يطلبه أولا ويقوم بقفل الملف بحيث يجب على كل من يطلب الملف بعد ذلك أن ينتظر حتى ينتهي هذا الشخص من الملف، وبعدها الذي يليه وهكذا، وهو أمر غير معقول أبدا!

الحل لهذه المشكلة كان بعمل ما يسمى بمزود SQL، يقوم مزود SQL باستقبال جميع الأوامر والطلبات في صور 2014ة استعلامات SQL ثم يقوم بتنفيذ هذه العمليات على المزود ويرسل نتيجة التنفيذ فقط إلى الزبون دون الحاجة إلى إرسال قاعدة البيانات بأكملها، فإذا أردت أن تحصل على حقل واحد فقط من أحد السجلات في أحد الجداول في قاعدة البيانات فإن الجزء الذي سيتم إرساله عبر الشبكة هو الطلب في صور 2014ة SQL والجزء الذي سيتم إعادته عبر الشبكة هو هذا الحقل فقط والذي قد لا يصل في حجمه إلى 10 بايتات مثلا إذا كان مكونه من 10 أحرف، مقارنة مع عملية إرسال قاعدة البيانات بأكملها والتي قد يصل حجمها إلى العديد من الميجابايتات وربما الجيجابايتات في بعض الأحيان، إضافة إلى ذلك فإن مزود SQL يقوم يقوم بتوزيع الأعباء على الطلبات بشكل رائع عندما يكون هنالك أكثر من طلب في نفس الوقت.







موضوع مقدم من منتديات ديزاد
منتديات ديزاد باتنة (http://www.dzbatna.com/vb)



https://fbcdn-sphotos-d-a.akamaihd.net/hphotos-ak-ash4/482113_236967293114455_1193518507_n.png (http://www.dzbatna.com/vb)
©المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى (http://www.dzbatna.com/vb)©

استعمل مربع البحث في الاسفل لمزيد من المواضيع


سريع للبحث عن مواضيع في المنتدى