لغة الاستعلامات البنيويه هو الاسم المختصر لهيكلة لغة استفسار واللغة هي المعيار لالتفاعل مع قواعد البيانات. لغة الاستعلامات البنيويه هو في الوقت نفسه المنظمه الدولية للتوحيد القياسي (ايزو) والمءسسه الامريكية الوطنية للمقاييس (المعهد القومى الامريكى للمعايير (الموحدة ، ولكن العديد من الاحزمه قاعدة بيانات تحتوي على التمديدات الملكيه التي ليست جزءا من معيار. كما واقع الأمر ، لا يوجد كثير من خوادم قاعدة البيانات التي سيكون لها 100 ٪ بدعم من لغة الاستعلامات البنيويه القياسيه.
|
|
دعنا ننظر أولا في بعض التفاعلات البسيطة التي يمكننا القيام باستخدام لغة الاستعلامات البنيويه اللغويه. دعنا نقول ، على سبيل المثال ، ان كان لدينا الجدول دعا user_table ، التي عقدت معلومات عن لاعبين في لعبة جافا. المعلومات هي فريدة من نوعها ورقم الهوية يليه اللاعب اسم المستخدم ، كلمة السر ، وعنوان البريد الإلكتروني. هنا في الرسم من الجدول في قاعدة البيانات مع بعض البيانات في عينه وهي :
وبافتراض جميع بيانات سبق ادخالها في قاعدة البيانات واردنا الحصول على كلمة السر من اللاعب الذي كان اسم المستخدم من جورج ، ونود ان استخدام لغة الاستعلامات البنيويه التالية بيان لاسترجاع بلدة كلمة السر :
اختر كلمة السر من حيث user_table اسم المستخدم = 'جورج' ؛
وكما ترون من البيان السابق ، شيء عظيم عن لغة الاستعلامات البنيويه هو التشابه الى اللغة الانجليزيه. وبذلك أعني فمن السهل جدا على قراءة وفهم ما البيان الذي يحاول القيام به. في هذا المثال ، ونحن على "اختيار" ، كرها ، الامر الذي يعني استعادتهم ، وكلمة السر "من" user_table "حيث" اسم المستخدم هو مساو لسلسلة "جورج". وعندما نفذ هذا الاستعلام ، وستكون قاعدة البيانات ثم إعادة كلمة السر (وهو geo321) من المستخدم مع اسم المستخدم جورج.
فماذا سيحدث اذا كان هناك اثنان المستخدمين مع اسم المستخدم جورج؟ بالاضافة الى ذلك ، فإن قاعدة البيانات سيعود أ recordset (هناك امكانيه فعلية للوصول الى مجموعة من لغات البرمجه ، ولكن يجب اولا ان يكون تم الاسترجاع الصف تلو الصف من قاعدة البيانات عن طريق recordset جوه) تحتوي على كلمات السر للسجلات انه وجد. الا اذا كنت تريد المستخدمين على وجه التحديد ان يكون لها نفس اسماء المستخدمين ، وافضل طريقه نحو هذا من شأنه ان يكون تكرارا للتأكد من اسماء المستخدمين عند ادخال المستخدمين البيانات في برنامجك لعبة او تحديد اسم المستخدم باعتباره المفتاح الاساسي.
لنلق نظرة على آخر مثال بسيط لادراج جميع السامي العشرات من لعبه في ترتيب تنازلي (أي ، بداية عن طريق الحصول على أعلى درجة ، ثم جاء بعده ، الخ). لنفرض لدينا user_table كما كان يسمى الميدانيه التي سجلت اعلى نقاط اللاعبين عالية الدرجة في لعبه. الافتراضي هو طلب تصاعديا ؛ بالتالي ستكون قاعدة البيانات استرجاع ادنى الدرجة الاولى اذا اخترنا جميع السامي عشرات من قاعدة البيانات. لهذا فان الحل هو استخدام دزك الكلمه الرئيسية ، التي تحكي عن قاعدة بيانات لأجل النتائج في الترتيب التنازلي (أي أعلى الاولى). هنا هي لغة الاستعلامات البنيويه البيان بأننا سوف يتطلب ذلك :
اختر اسم المستخدم ، اعلى نقاط من اجل user_table بها اعلى نقاط دزك
| ملاحظه | اذا كنت تحديد ترتيب الميدان ، ويجب ان تعرف ايضا في مجال اختيار القسم. لا يمكنك النوع الخاص بك resultset مع الحقل الذي لا يدرج في النتيجة. |
وهذا من شأنه ان البيان السابق استرجاع اسم المستخدم ودرجة عالية من user_table امرت به اعلى نقاط ميدانيه في ترتيب تنازلي. نلاحظ كيف نستطيع استرجاع أكثر من حقل واحد فى بيان واحد ، تفصل بين الميادين التي تريد استرجاعها مع فواصل. ويمكننا ايضا استخدام ا * ، والتي من المعروف عنها باعتبارها مجرد احرف البدل ويروي قاعدة بيانات لعودة جميع الحقول من الجدول بدلا من عدد محدد من المجالات ، كما في المثال الأول وصلنا للتو تم الاسترجاع كلمة السر.
دعنا الآن ننظر الى مثال واحد النهائية من اقوى سمات لغة الاستعلامات البنيويه وقواعد البيانات. هذا هو استخدام التعابير العاديه. منتظم التعبير بعبارات بسيطة هي طريقة للتعبير عن لغة الاستعلامات البنيويه لنمط محدد من النص الى البحث عن وفي احد الحقول في الجدول.
هنا مثال على ذلك البيان من شأنه استرجاع جميع اسماء المستخدمين من user_table ان يبدأ مع الحرف (ز) :
اختر اسم المستخدم من user_table فيها اسم مستخدم مثل 'ز ٪' ؛
ولاحظ ان جميع اننا حقا هنا هو العمل بطريقة مختلفة باستخدام الكلمات الرئيسية مثل بدلا من يساوي التوقيع. ايضا ، بمثابة ٪ عند استخدام أحرف البدل مثل الكلمات الرئيسية. لذلك ، فان البيان الذي سيختار (استرجاع) اي ان تبدأ اسماء المستخدمين مع ز ، مثل أسماء التي تبدأ مع ز سوف يصلح العاديه التعبير 'ز ٪'. اذا أردنا اختيار أي اسماء للتو ان الرسالة الواردة ز اي مكان في الخيط ، ونود أن استخدام البيان الآتي :
اختر اسم المستخدم من حيث user_table اسم المستخدم مثل "ز ٪ ٪" ؛
كما ترون ، ان كل ما نحن فيه تغير هو التعبير العاديه باضافه آخر أحرف البدل (٪) قبل ز ، السماح الصفر او اكثر من حرف مختلفة سواء قبل او بعد ز عندما يفتش قاعدة البيانات.
Online: 628 users browsing the articles directory
|
|