في سوق اليوم ، حيث يتم إنشاء كمية هائلة من البيانات كل يوم ، من المهم جدًا فهم كيفية التعامل مع البيانات. SQL Server هو بيئة متكاملة طورتها Microsoft للتعامل مع البيانات.في هذه المقالة حول البرنامج التعليمي لـ SQL Server ، ستتعلم جميع العمليات والأوامر التي تحتاجها لاستكشاف قواعد البيانات الخاصة بك.
من أجل فهم أفضل ، قمت بتقسيم المدونة إلى الفئات التالية:
أوامر | وصف |
تستخدم هذه المجموعة من الأوامر لتعريف قاعدة البيانات. | |
أوامر لغة معالجة البيانات (DML) | تُستخدم أوامر المعالجة لمعالجة البيانات الموجودة في قاعدة البيانات. |
تتعامل هذه المجموعة من الأوامر مع الأذونات والحقوق وعناصر التحكم الأخرى لأنظمة قاعدة البيانات. | |
تستخدم هذه الأوامر ل التعامل مع معاملة قاعدة البيانات. |
بصرف النظر عن الأوامر ، يتم تناول الموضوعات التالية في هذه المقالة:
- ما هو خادم SQL؟
- قم بتثبيت SQL Server
- اتصل بـ SQL Server باستخدام SSMS
- الوصول إلى محرك قاعدة البيانات
- بنية خادم SQL
- التعليقات في SQL
- أنواع بيانات خادم SQL
- مفاتيح في قاعدة البيانات
- القيود في قاعدة البيانات
- العاملين
- وظائف مجمعة
- وظائف من تحديد المستخدم
- استعلامات متداخلة
- ينضم
- الحلقات
- الإجراءات المخزنة
- معالجة الاستثناء
***ملحوظة*** في هذا البرنامج التعليمي لـ SQL Server ، سأعتبر قاعدة البيانات أدناه على أنهاعلى سبيل المثال ، لتظهر لك كيفية التعلم والكتابةأوامر.
هوية الطالب | أسم الطالب | اسم الوالدين | رقم الهاتف | عنوان | مدينة | بلد |
واحد | انا اكره | أكريتي مهرا | 9955339966 | طريق اللواء بلوك 9 | حيدر أباد | الهند |
2 | ماناسا | شوريا شارما | 9234568762 | شارع مايو 15 | كولكاتا | الهند |
3 | أناي | سمية ميشرا | 9876914261 | منزل ماراثالي رقم 101 | بنغالورو | الهند |
4 | بريتي | روهان سينها | 9765432234 | شارع كوينز 40 | دلهي | الهند |
5 | شنايا | أبهيناي أغاروال | 9878969068 | أوبروي شارع 21 | مومباي | الهند |
قبل أن نبدأ في فهم الأوامر المختلفة المستخدمة في SQL Server ، دعونا نفهم ما هو SQL Server ، وبنيته وكيفية تثبيته.
ما هو خادم SQL؟
Microsoft SQL Server هو ارتباط نظام إدارة قواعد البيانات . وهو يدعم ملفات لغة الاستعلام الهيكلية ويأتي مع تطبيقه الخاص للغة SQL وهي لغة Transact-SQL (T-SQL) . لديها بيئة متكاملة للتعامل مع قواعد بيانات SQL ، وهو .
المكونات الرئيسية لـ SQL Server هي كما يلي:
- محرك قاعدة البيانات: يتعامل هذا المكون مع التخزين ومعالجة المعاملات السريعة وتأمين البيانات.
- خادم قاعدة البيانات - تُستخدم هذه الخدمة لبدء مثيل MS SQL Server وإيقافه وإيقافه مؤقتًا ومتابعته.
- عامل خادم SQL - تلعب خدمة عامل الخادم دور برنامج جدولة المهام ويتم تشغيلها بواسطة أي حدث أو وفقًا للمتطلبات.
- مستعرض SQL Server - تُستخدم هذه الخدمة لتوصيل الطلب الوارد بمثيل SQL Server المطلوب.
- البحث عن نص كامل لـ SQL Server - تُستخدم للسماح للمستخدم بتشغيل استعلامات النص الكامل مقابل بيانات الأحرف في جداول SQL.
- كاتب SQL Server VSS - يسمح بالنسخ الاحتياطي واستعادة ملفات البيانات عند عدم تشغيل SQL Server.
- خدمات تحليل خادم SQL (SSAS) - تستخدم هذه الخدمة لتوفير تحليل البيانات واستخراج البيانات و قدرات. تم دمج SQL Server أيضًا مع و ر لتحليلات البيانات المتقدمة.
- خدمات تقارير خادم SQL (SSRS) - كما يوحي الاسم ، تُستخدم هذه الخدمة لتوفير ميزات وقدرات اتخاذ القرار بما في ذلك التكامل مع .
- خدمات تكامل خادم SQL (SSIS) - تُستخدم هذه الخدمة لأداء عمليات ETL لأنواع مختلفة من البيانات من مصادر متعددة للبيانات.
الآن ، بعد أن عرفت ما هو MS SQL Server ، دعنا نمضي قدمًا في هذه المقالة حول البرنامج التعليمي لـ SQL Server ونفهم كيفية تثبيت وإعداد SQL Server.
قم بتثبيت SQL Server
اتبع الخطوات التالية لتثبيت SQL Server:
الخطوة 1: اذهب إلى الصفحة الرسمية لـ تنزيل Microsoft SQL Server ، حيث ستجد خيار تثبيت SQL Server إما محليًا أو على السحابة.
الخطوة 2: الآن ، قم بالتمرير لأسفل وسترى خيارين: إصدار المطور والمؤسسة . هنا ، سوف أقوم بتنزيل ملف طبعة المطور . للتنزيل ، ما عليك سوى النقر فوق ملف التحميل الان اختيار. الرجوع أدناه.
الخطوه 3: بمجرد تنزيل التطبيق ، انقر نقرًا مزدوجًا فوق الملف وسترى النافذة التالية.
الخطوة الرابعة: الآن ، يمكنك اختيار أي من الخيارات الثلاثة لإعداد SQL Server. هنا ، سأختار فقط ملف الخيار الأساسي . عند تحديد خيار نوع التثبيت ، ستكون الشاشة التالية هي قبول اتفاقية الترخيص. للقيام بذلك ، انقر فوق قبول في النافذة التالية.
الخطوة الخامسة: بعد ذلك ، يجب عليك تحديد موقع تثبيت SQL Server. بعد ذلك ، عليك النقر فوق تثبيت.
بمجرد النقر فوق تثبيت ، سترى أنه يتم تنزيل الحزم المطلوبة. الآن وبعد اكتمال التثبيت ستظهر لك الشاشة التالية:
هنا ، يمكنك إما المضي قدمًا والنقر فوق Connect Now ، أو يمكنك تخصيص التثبيت. من أجل فهمك بشكل أفضل ، سوف أمضي قدمًا وأختار يعدل أو يكيف.
الخطوة السادسة: بمجرد النقر فوق يعدل أو يكيف في النافذة أعلاه ، سترى فتح المعالج التالي. في النافذة التالية ، انقر فوق التالى.
الخطوة السابعة: بعد تثبيت القواعد تلقائيًا ، انقر فوق التالى . الرجوع أدناه.
الخطوة 8: بعد ذلك ، عليك اختيار نوع التثبيت. لذا اختر ملف نفذ أ التثبيت الجديد لـ SQL Server 2017 الخيار ثم انقر فوق التالى.
الخطوة 9: في المعالج الذي يفتح ، اختر الإصدار: مطور. ثم انقر فوق التالى . الرجوع أدناه.
الخطوة 10: الآن ، اقرأ واقبل اتفاقيات الترخيص عن طريق تسجيل الوصول إلى زر الاختيار ثم النقر فوق التالى . الرجوع أدناه.
الخطوة 11: في المعالج أدناه ، يمكنك اختيار الميزات التي ترغب في تثبيتها. أيضًا ، يمكنك اختيار دليل جذر المثيل ثم النقر فوق التالى . هنا ، سأختار خدمات مشغل قواعد البيانات .
الخطوة 12: بعد ذلك ، عليك تسمية المثيل ، وسيتم إنشاء معرف المثيل تلقائيًا. هنا ، سأقوم بتسمية المثيل 'edureka'. ثم انقر فوق التالى.
الخطوة 13: في معالج تكوين الخادم ، انقر فوق التالى .
الخطوة 14: الآن ، عليك تمكين أوضاع المصادقة. هنا ، سترى ملف وضع مصادقة Windows و وضع مختلط . سأختار الوضع المختلط. ثم اذكر كلمة المرور ثم سأضيف المستخدم الحالي باسم مشرف عن طريق اختيار إضافة المستخدم الحالي اختيار.
الخطوة 15: ثم اختر مسار ملف التكوين وانقر فوق تثبيت .
بعد اكتمال التثبيت ، ستظهر لك الشاشة التالية:
اتصل بـ SQL Server باستخدام SSMS
بعد تثبيت SQL Server ، تكون خطوتك التالية هي توصيل SQL Server بـ SQL Server Management Studio. للقيام بذلك ، اتبع الخطوات التالية:
الخطوة 1: ارجع إلى النافذة التالية وانقر فوق تثبيت SSMS اختيار.
الخطوة 2: بمجرد النقر فوق هذا الخيار ، ستتم إعادة توجيهك إلى ملف الصفحة التالية ، حيث عليك أن تختار تنزيل SSMS.
الخطوه 3: بعد تنزيل الإعداد ، انقر نقرًا مزدوجًا فوق التطبيق وسترى فتح المعالج التالي.
الخطوة الرابعة: انقر فوق خيار التثبيت ، في النافذة أعلاه وسترى أن هذا التثبيت سيبدأ.
الخطوة الخامسة: بعد اكتمال التثبيت ، سيظهر لك مربع حوار كما هو موضح أدناه.
بعد تثبيت SSMS ، فإن الخطوة التالية هي الوصول إلى ملف محرك قاعدة البيانات .
الوصول إلى محرك قاعدة البيانات
عندما تفتح ملف استوديو إدارة خادم SQL من قائمة البدأ ، ستفتح نافذة مشابهة للنافذة الموضحة في الصورة أدناه.
هنا ، اذكر اسم الخادم ووضع المصادقة وانقر فوق الاتصال.
بعد النقر فوق الاتصال ، سترى الشاشة التالية.
حسنًا يا رفاق ، هذه هي طريقة تثبيت وإعداد خادم SQL. الآن ، المضي قدمًا في هذا البرنامج التعليمي لـ SQL Server ، دعنا نفهم المكونات المختلفة لبنية SQL Server.
بنية خادم SQL
بنية SQL Server كما يلي:
- الخادم & ناقص هذا هو المكان الذي يتم فيه تثبيت خدمات SQL وقاعدة البيانات
- محرك العلائقية & ناقص يحتوي على محلل الاستعلام والمحسن والمنفذ ويحدث التنفيذ في المحرك العلائقي.
- محلل الأوامر & ناقص للتحقق من بنية الاستعلام وتحويل الاستعلام إلى لغة الجهاز.
- محسن & ناقص إعداد خطة التنفيذ كناتج عن طريق أخذ الإحصائيات والاستعلام وشجرة الجبر كمدخلات.
- منفذ الاستعلام & ناقص هذا هو المكان الذي يتم فيه تنفيذ الاستعلامات خطوة بخطوة
- محرك التخزين & ناقص هذا هو المسؤول عن تخزين واسترجاع البيانات على نظام التخزين ، ومعالجة البيانات ، وإدارة المعاملات وقفلها.
الآن ، بعد أن عرفت كيفية إعداد وتثبيت SQL Server ومكوناته المختلفة ، دعنا نبدأ في الكتابة الخادم. ولكن ، قبل ذلك اسمحوا لي أن أتحدث عن كيفية كتابة التعليقات في SQL Server.
التعليقات في SQL Server
هناك طريقتان يمكنك من خلالهما التعليق في SQL ، أي استخدام إما س التعليقات أحادية السطر أو ال م تعليقات الخط النهائي .
تعليقات من سطر واحد
تبدأ التعليقات أحادية السطر بـ شرطان (-). ومن ثم ، فإن النص المذكور بعد (-) ، حتى نهاية السطر الواحد سوف يتجاهله المترجم.
مثال:
- مثال على تعليقات سطر واحد
تعليقات متعددة الأسطر
تبدأ التعليقات متعددة الأسطر بـ / * وتنتهي بـ * / . ومن هنا جاء النص بين / * و * / سيتم تجاهله من قبل المترجم.
مثال:
/ * مثال على التعليقات متعددة الأسطر * /
الآن في هذه المقالة حول البرنامج التعليمي لـ SQL Server ، دعنا نبدأ بالمجموعة الأولى من الأوامر ، أي أوامر لغة تعريف البيانات.
أوامر لغة تعريف البيانات
سيعطيك هذا القسم من المقالة فكرة عن الأوامر التي يمكنك من خلالها تحديد قاعدة البيانات الخاصة بك. الأوامر هي كما يلي:
خلق
تستخدم هذه العبارة لإنشاء جدول أو قاعدة بيانات أو طريقة عرض.
بيان 'إنشاء قاعدة بيانات'
يستخدم هذا البيان لإنشاء قاعدة بيانات.
بناء الجملة
إنشاء اسم قاعدة البيانات
مثال
إنشاء قاعدة بيانات الطلاب
ال ' اصنع جدول ' بيان
كما يوحي الاسم ، يتم استخدام هذه العبارة لإنشاء جدول.
بناء الجملة
إنشاء اسم جدول الجدول (نوع بيانات العمود 1 ، نوع بيانات العمود 2 ، نوع بيانات العمود 3 ، .... نوع بيانات العمود ن)
مثال
CREATE TABLE StudentInfo (StudentID int، StudentName varchar (8000)، ParentName varchar (8000)، PhoneNumber int، AddressofStudent varchar (8000)، City varchar (8000)، Country varchar (8000))
قطرة
تستخدم هذه العبارة لإسقاط جدول أو قاعدة بيانات أو طريقة عرض موجودة.
بيان 'DROP DATABASE'
يستخدم هذا البيان لإسقاط قاعدة بيانات موجودة. ستفقد المعلومات الكاملة الموجودة في قاعدة البيانات بمجرد تنفيذ الأمر أدناه.
بناء الجملة
DROP DATABASE DatabaseName
مثال
طلاب قاعدة بيانات DROP
بيان 'DROP TABLE'
يستخدم هذا البيان لإسقاط جدول موجود. ستفقد المعلومات الكاملة الموجودة في الجدول بمجرد تنفيذ الأمر أدناه.
بناء الجملة
DROP TABLE TableName
مثال
إسقاط الجدول StudentInfo
عمر
يتم استخدام الأمر ALTER لإضافة أو حذف أو تعديل أعمدة أو قيود في جدول موجود.
ال ' تغيير الجدول ' بيان
تستخدم هذه العبارة لإضافة أو حذف أو تعديل الأعمدة في جدول موجود مسبقًا.
بيان 'ALTER TABLE' مع ADD / DROP COLUMN
يتم استخدام عبارة ALTER TABLE مع الأمر ADD / DROP Column لإضافة عمود وحذفه.
بناء الجملة
تغيير اسم الجدول إضافة اسم العمود نوع البيانات تعديل الجدول اسم الجدول إسقاط العمود اسم العمود
مثال
- إضافة مجموعة الدم في العمود: تبديل جدول StudentInfo إضافة BloodGroup varchar (8000) - إزالة مجموعة الدم في العمود: تغيير مجموعة الدم في الجدول
بيان 'ALTER TABLE' مع ALTER COLUMN
يمكن استخدام عبارة ALTER TABLE مع عمود ALTER لتغيير نوع بيانات عمود موجود في جدول.
بناء الجملة
ALTER TABLE TABLE Name ALTER COLUMN ColumnName نوع البيانات
مثال
--إضافة عمود DOB وتغيير نوع البيانات من تاريخ إلى تاريخ ووقت. ALTER TABLE StudentInfo ADD DOB date ALTER TABLE StudentInfo ALTER COLUMN DOB datetime
اقتطاع
يتم استخدام أمر SQL هذا لحذف المعلومات الموجودة في الجدول ولكنه لا يحذف الجدول نفسه. لذلك ، إذا كنت تريد حذف المعلومات الموجودة في الجدول ، وليس حذف الجدول نفسه ، فيجب عليك استخدام الأمر TRUNCATE. عدا ذلك ، استخدم الأمر DROP.
بناء الجملة
اقتطاع الجدول TableName
مثال
اقتطاع الجدول StudentInfo
إعادة
تستخدم هذه العبارة لإعادة تسمية جدول واحد أو أكثر.
بناء الجملة
sp_rename 'OldTableName'، 'NewTableName'
مثال
sp_rename 'StudentInfo' ، 'Infostudents'
الانتقال في هذه المقالة حول تعليمي SQL Server ، دعنا نفهم أنواع البيانات المختلفة التي يدعمها SQL Server.
أنواع بيانات خادم SQL
فئة نوع البيانات | اسم نوع البيانات | وصف | النطاق / التركيب |
العدد الدقيق | رقمي | تستخدم لتخزين القيم الرقمية ولها دقة ثابتة وأرقام مقياس | - 10 ^ 38 +1 حتى 10 ^ 38 - 1. |
تينيينت | تستخدم لتخزين قيم الأعداد الصحيحة | 0 إلى 255 | |
الصغيرة | تستخدم لتخزين قيم الأعداد الصحيحة | -2 ^ 15 (-32768) إلى 2 ^ 15-1 (32767) | |
بيجينت | تستخدم لتخزين قيم الأعداد الصحيحة | -2 ^ 63 (-9،223،372،036،854،775،808) إلى 2 ^ 63-1 (9،223،372،036،854،775،807) | |
int | تستخدم لتخزين قيم الأعداد الصحيحة | -2 ^ 31 (-2147483648) حتى 2 ^ 31-1 (2147483647) | |
قليلا | يخزن نوع بيانات عدد صحيح يسرد قيمة 0 أو 1 أو NULL | 0 أو 1 أو NULL | |
عدد عشري | تستخدم لتخزين القيم الرقمية ولها دقة ثابتة وأرقام مقياس | - 10 ^ 38 +1 حتى 10 ^ 38 - 1. | |
مال صغير | تستخدم لتخزين النقودأو قيم العملات. | - 214،748.3648 إلى 214،748.3647 | |
مال | تستخدم لتخزين النقودأو قيم العملات. | -922،337،203،685،477.5808 إلى 922،337،203،685،477.5807 (-922،337،203،685،477.58 إلى 922،337،203،685،477.58 لـ Informatica. | |
الأرقام التقريبية | تطفو | تستخدم لتخزين البيانات الرقمية ذات الفاصلة العائمة | - 1.79E + 308 إلى -2.23E-308 ، 0 و 2.23E-308 إلى 1.79E + 308 |
حقيقة | تستخدم لتخزين البيانات الرقمية ذات الفاصلة العائمة | - 3.40E + 38 إلى -1.18E - 38 ، 0 و 1.18E - 38 إلى 3.40E + 38 | |
التاريخ و الوقت | تاريخ | يستخدم لتحديد تاريخ في SQL Server. | التركيب: التاريخ |
سمولداتيمي | يُستخدم لتحديد تاريخ يتم دمجه مع وقت من اليوم حيث يعتمد الوقت على 24 ساعة في اليوم ، مع الثواني دائمًا صفر (: 00) وبدون أجزاء من الثواني. | بناء الجملة: سمولداتيتيمي | |
التاريخ والوقت | يُستخدم لتحديد تاريخ يتم دمجه مع وقت من اليوم مع أجزاء من الثواني استنادًا إلى نظام 24 ساعة. | بناء الجملة: التاريخ والوقت | |
التاريخ والوقت 2 | التاريخ والوقت 2 هو امتداد للوجود التاريخ والوقت النوع الذي يحتوي على دقة كسور افتراضية أكبر ، نطاق تاريخ أكبر. | بناء الجملة: datetime2 | |
تاريخ / إزاحة | يستخدم لتحديد تاريخ يتم دمجه مع وقت من اليوم به إدراك المنطقة الزمنية. يعتمد على نظام 24 ساعة. | بناء الجملة: datetimeoffset | |
زمن | تستخدم لتحديد وقت من اليوم. | النحو: الوقت | |
سلاسل الأحرف | شار | تستخدم لتخزين الأحرف ذات الحجم الثابت. | شار[( ن )] حيث تختلف قيمة n من 1 إلى 8000 |
فارشار | تستخدم لتخزين أحرف متغيرة الطول. | varchar [( ن | ماكس)] حيث تتراوح قيمة n من 1-8000 والحد الأقصى للتخزين المسموح به هو 2 جيجابايت. | |
نص | تستخدم لتخزين vبيانات غير يونيكود بطول ariable | الحد الأقصى لطول السلسلة المسموح به - 2 ^ 31-1 (2،147،483،647) | |
سلاسل أحرف Unicode | نشار | تستخدم لتخزين الأحرف ذات الحجم الثابت. | نشار[(n)] حيث تختلف قيمة n من 1-4000 |
نفارشار | تستخدم لتخزين أحرف متغيرة الطول. | varchar [( ن | ماكس)] حيث تتراوح قيمة n من 1-4000 ويكون الحد الأقصى للتخزين المسموح به هو 2GB. | |
ntext | تستخدم لتخزين بيانات Unicode متغيرة الطول | أقصى طول مسموح به للسلسلة - 2 ^ 30-1 (2147483647) | |
سلاسل ثنائية | الثنائية | تستخدم لتخزين أنواع البيانات الثنائية ذات الطول الثابت | الثنائية[( ن )] حيث تختلف قيمة n من 1 إلى 8000 |
متنوع | تستخدم لتخزين أنواع البيانات الثنائية ذات الطول الثابت | متنوع[( ن )] حيث يختلف n vale من 1-8000 ويكون الحد الأقصى للتخزين المسموح به 2 ^ 31-1 بايت. | |
صورة | تستخدم لتخزين بيانات ثنائية متغيرة الطول | 0 - 2 ^ 31-1 (2،147،483،647) بايت | |
أنواع البيانات الأخرى | إنه نوع بيانات للإجراء المخزن أو المتغيرات معلمات الإخراج التي تحتوي على مرجع لمؤشر. | - | |
Rowversion | تُستخدم لعرض الأرقام الثنائية الفريدة التي تم إنشاؤها تلقائيًا داخل قاعدة البيانات. | - | |
هرمي | تستخدم لتمثيل الموقف في التسلسل الهرمي. | - | |
معرف فريد | هو 16 بايت GUID. | بناء الجملة:معرف فريد | |
sql_variant | تُستخدم لتخزين قيم أنواع البيانات المختلفة المدعومة من SQL Server | بناء الجملة: sql_variant | |
xml | تستخدم لتخزين نوع بيانات XML. | xml ([CONTENT | DOCUMENT] xml_schemacollection) | |
أنواع الهندسة المكانية | تستخدم لتمثيل البيانات في نظام إحداثيات إقليدي (مسطح). | - | |
أنواع الجغرافيا المكانية | تُستخدم لتخزين البيانات الإهليلجية (الأرض المستديرة) ، مثل إحداثيات خطوط الطول والعرض لنظام تحديد المواقع العالمي (GPS). | - | |
الطاولة | يستخدم لتخزين مجموعة النتائج للمعالجة في وقت لاحق | - |
بعد ذلك ، في هذه المقالة ، دعنا نفهم الأنواع المختلفة من المفاتيح والقيود في قاعدة البيانات.
أنواع مختلفة من المفاتيح في قاعدة البيانات
فيما يلي أنواع المفاتيح المختلفة المستخدمة في قاعدة البيانات:
- مفتاح مرشح - مفتاح المرشح هو مجموعة من السمات التي يمكنها تحديد الجدول بشكل فريد. يمكن أن يحتوي الجدول على أكثر من مفتاح مرشح واحد ، ومن بين المفاتيح المرشحة المختارة ، يتم اختيار مفتاح واحد ليكون المفتاح الأساسي.
- سوبر كي - يمكن لمجموعة السمات تحديد مجموعة tuple بشكل فريد. لذا ، فإن المفاتيح المرشحة والمفاتيح الفريدة والمفاتيح الأساسية هي مفاتيح فائقة ، ولكن العكس ليس صحيحًا.
- المفتاح الأساسي - المفاتيح الأساسية تستخدم لتعريف كل مجموعة بشكل فريد.
- مفتاح بديل - المفاتيح البديلة هي تلك المفاتيح المرشحة التي لم يتم اختيارها كمفتاح أساسي.
- مفتاح فريد- تشبه المفاتيح الفريدة المفتاح الأساسي ، ولكنها تسمح بقيمة NULL واحدة في العمود.
- مفتاح غريب - السمة التي يمكنها فقط عرض القيم كقيم لبعض السمات الأخرى ، هي مفتاح غريب إلى السمة التي تشير إليها.
- مفتاح مركب- المفاتيح المركبة هي مجموعة من عمودين أو أكثر تحدد كل مجموعة بشكل فريد.
القيود المستخدمة في قاعدة البيانات
تُستخدم القيود في قاعدة بيانات لتحديد قواعد البيانات المخزنة في جدول. الأنواع المختلفة من القيود في SQL هم كالآتي:
غير فارغة
يضمن القيد NOT NULL عدم إمكانية احتواء العمود على قيمة NULL.
مثال
إنشاء جدول معلومات الطلاب (StudentID int NOT NULL، StudentName varchar (8000) NOT NULL، ParentName varchar (8000)، PhoneNumber int، AddressofStudent varchar (8000) NOT NULL، City varchar (8000)، Country varchar (8000)) --NOT NULL في ALTER TABLE ALTER TABLE StudentInfo ALTER COLUMN PhoneNumber int NOT NULL
الانحدار اللوجستي في مثال بيثون
فريد
يضمن هذا القيد أن تكون جميع القيم الموجودة في العمود فريدة.
مثال
--UNIQUE عند إنشاء جدول ، قم بإنشاء جدول معلومات الطلاب (StudentID int NOT NULL UNIQUE ، StudentName varchar (8000) NOT NULL ، ParentName varchar (8000) ، PhoneNumber int ، AddressofStudent varchar (8000) NOT NULL ، City varchar (8000) ، Country varchar ( 8000)) - فريد في عدة أعمدة ، أنشئ جدول معلومات الطلاب (StudentID int NOT NULL ، StudentName varchar (8000) NOT NULL ، ParentName varchar (8000) ، PhoneNumber int ، AddressofStudent varchar (8000) NOT NULL ، City varchar (8000) ، Country varchar (8000) CONSTRAINT UC_Student_Info UNIQUE (StudentID، PhoneNumber)) - فريدة من نوعها على ALTER TABLE ALTER TABLE StudentInfo ADD UNIQUE (StudentID) - لإسقاط قيد فريد ، قم بتغيير TABLE StudentInfo DROP CONSTRAINT
التحقق من
يضمن قيد التحقق أن جميع القيم الموجودة في عمود تفي بشرط معين.
مثال
- CHECK Constraint on CREATE TABLE CREATE TABLE StudentInfo (StudentID int NOT NULL، StudentName varchar (8000) NOT NULL، ParentName varchar (8000)، PhoneNumber int، AddressofStudent varchar (8000) NOT NULL، City varchar (8000)، Country varchar ( 8000) CHECK (Country = 'India')) - التحقق من القيد على عدة أعمدة إنشاء جدول معلومات الطلاب (StudentID int NOT NULL ، StudentName varchar8000) NOT NULL ، ParentName varchar (8000) ، PhoneNumber int ، AddressofStudent varchar (8000) NOT NULL ، City varchar (8000) ، Country varchar (8000) CHECK (Country = 'India' AND City = 'Hyderabad')) - تحقق من القيود على تغيير الجدول ، معلومات الطلاب ، أضف التحقق (البلد = 'الهند') - لإعطاء اسم إلى CHECK Constraint ALTER TABLE معلومات الطلاب أضف القيود CheckConstraintName CHECK (Country = 'India') - لإسقاط قيد الاختيار ، قم بتغيير الجدول StudentInfo Drop CONSTRAINT CheckConstraintName
إفتراضي
يتكون القيد الافتراضي من مجموعة من القيم الافتراضية لعمود عندما لا يتم تحديد قيمة.
مثال
- القيد الافتراضي على إنشاء جدول إنشاء جدول معلومات الطلاب (StudentID int، StudentName varchar (8000) NOT NULL، ParentName varchar (8000)، PhoneNumber int، AddressofStudent varchar (8000) NOT NULL، City varchar (8000)، Country varchar (8000) الافتراضي 'الهند') - القيد الافتراضي على تغيير الجدول تبديل جدول الطلاب معلومات إضافة CONSTRAINT defau_Country الافتراضي 'الهند' للبلد - لإسقاط القيد الافتراضي تغيير جدول الطلاب معلومات تغيير COLUMN البلد إسقاط defau_Country
فهرس
ال قيد INDEX يستخدم لإنشاء الفهارس في الجدول ، والتي من خلالها يمكنك إنشاء واسترجاع البيانات من قاعدة البيانات بسرعة كبيرة.
بناء الجملة
- قم بإنشاء فهرس حيث يتم السماح بالقيم المكررة. العمود N)
مثال
CREATE INDEX idex_StudentName ON StudentsInfo (StudentName) - لحذف فهرس في جدول DROP INDEX StudentsInfo.idex_StudentName
للمضي قدمًا في هذه المقالة حول البرنامج التعليمي لـ SQL Server ، دعنا الآن نفهم أوامر لغة معالجة البيانات المختلفة المستخدمة في Microsoft SQL Server.
أوامر لغة معالجة البيانات
سيغطي هذا القسم من المقالة كل تلك الأوامر التي يمكنك من خلالها معالجة قاعدة البيانات. الأوامر هي كما يلي:
بصرف النظر عن هذه الأوامر ، هناك أيضًا عوامل / وظائف تلاعب أخرى مثل:
استعمال
تستخدم هذه العبارة لتحديد قاعدة البيانات لبدء إجراء عمليات مختلفة عليها.
بناء الجملة
اسم قاعدة بيانات USE
مثال
طلاب USE
ادخل في
ال INSERT INTO عبارة يستخدم لإدراج سجلات جديدة في جدول موجود.
بناء الجملة
INSERT INTO TableName (Column1، Column2، Column3، ...، ColumnN) VALUES (value1، value2، value3، ...) - إذا كنت لا تريد ذكر أسماء الأعمدة ، فاستخدم الصيغة التالية INSERT INTO TableName VALUES (القيمة 1 ، القيمة 2 ، القيمة 3 ، ...)
مثال
INSERT INTO StudentsInfo (StudentID، StudentName، ParentName، PhoneNumber، AddressofStudent، City، Country) VALUES ('06'، 'Sanjana'، 'Kapoor'، '9977331199'، 'Buffalo Street House No 10'، 'Kolkata'، 'India ') INSERT INTO StudentsInfo VALUES (' 07 '،' Vishal '،' Mishra '،' 9876509712 '،' Nice Road 15 '،' Pune '،' India ')
تحديث
يتم استخدام عبارة UPDATE لتعديل أو تحديث السجلات الموجودة بالفعل في الجدول.
بناء الجملة
UPDATE TableName SET Column1 = Value1، Column2 = Value2، ... أين الشرط
مثال
UPDATE StudentsInfo SET StudentName = 'Aahana' ، المدينة = 'Ahmedabad' حيث StudentID = 1
حذف
يتم استخدام عبارة DELETE لحذف السجلات الموجودة في جدول.
بناء الجملة
احذف من TableName أين الحالة
مثال
احذف من معلومات الطلاب حيث StudentName = 'Aahana'
اذهب
يتم استخدام عبارة MERGE لإجراء عمليات INSERT و UPDATE و DELETE في جدول معين ، حيث يتم توفير الجدول المصدر. الرجوع أدناه.
بناء الجملة
دمج TagretTableName باستخدام SourceTableName في MergeCondition عند مطابقتها بعد ذلك Update_Statement عندما لا يتم مطابقتها ثم Insert_Statement عند عدم مطابقتها حسب المصدر ثم حذفها
مثال
لفهم بيان الدمج ، ضع في الاعتبار الجداول التالية كجدول المصدر والجدول الهدف.
جدول المصدر:
هوية الطالب | أسم الطالب | ماركس |
واحد | انا اكره | 87 |
2 | ماناسا | 92 |
4 | أناي | 74 |
الجدول المستهدف:
هوية الطالب | أسم الطالب | ماركس |
واحد | انا اكره | 87 |
2 | ماناسا | 67 |
3 | سوراب | 55 |
MERGE SampleTargetTable TARGET USING SampleSourceTable SOURCE ON (TARGET.StudentID = SOURCE.StudentID) عند MATCHED AND TARGET.StudentName SOURCE.StudentName أو TARGET.Marks SOURCE.Marks.Marks عند عدم تطابقها مع الهدف ، أدخل (StudentID ، StudentName ، Marks) القيم (SOURCE.StudentID ، SOURCE.StudentName ، SOURCE.Marks) عندما لا تتم مطابقتها حسب المصدر ثم احذفها
انتاج |
هوية الطالب | أسم الطالب | ماركس |
واحد | انا اكره | 87 |
2 | ماناسا | 92 |
4 | أناي | 74 |
تحديد
ال عبارة SELECT يستخدم لتحديد البيانات من قاعدة بيانات أو جدول أو طريقة عرض. يتم تخزين البيانات التي تم إرجاعها في جدول نتائج يسمى مجموعة النتائج .
بناء الجملة
SELECT Column1، Column2، ... ColumN FROM TableName - (*) يُستخدم لتحديد الكل من الجدول SELECT * FROM table_name - لتحديد عدد السجلات المراد إرجاعها استخدم: حدد أعلى 3 * من TableName
مثال
- لتحديد عدد قليل من الأعمدة حدد StudentID ، اسم الطالب من StudentInfo - (*) يُستخدم لتحديد الكل من الجدول حدد * من معلومات الطلاب - لتحديد عدد السجلات المراد إرجاعها: حدد أعلى 3 * من معلومات الطلاب
يمكننا أيضًا استخدام الكلمات الرئيسية التالية مع عبارة SELECT:
خامد
يتم استخدام الكلمة الأساسية DISTINCT مع عبارة SELECT لإرجاع قيم مختلفة فقط.
بناء الجملة
حدد العمود 1 ، العمود 2 ، ... العمود المميز من الجدول اسم
مثال
حدد رقم الهاتف المميز من معلومات الطلاب
ترتيب حسب
تستخدم هذه العبارة لفرز النتائج المطلوبة إما بترتيب تصاعدي أو تنازلي. بشكل افتراضي ، يتم تخزين النتائج بترتيب تصاعدي. ومع ذلك ، إذا كنت ترغب في الحصول على النتائج بترتيب تنازلي ، فيجب عليك استخدام تنازلي كلمة رئيسية.
بناء الجملة
حدد Column1، Column2، ... ColumnN FROM TableName ORDER BY Column1، Column2، ... ASC | DESC
مثال
- حدد جميع الطلاب من جدول 'معلومات الطلاب' الذي تم فرزه حسب اسم الوالد: حدد * من معلومات الطلاب ORDER BY ParentName - حدد جميع الطلاب من جدول 'معلومات الطلاب' المصنف حسب اسم الوالدين بترتيب تنازلي: حدد * من معلومات الطلاب ORDER BY ParentName DESC - حدد جميع الطلاب من جدول 'معلومات الطلاب' مرتبة حسب اسم الوالد واسم الطالب: حدد * من معلومات الطلاب ORDER BY ParentName ، StudentName / * حدد جميع الطلاب من جدول 'StudentsInfo' مرتبة حسب ParentName بترتيب تنازلي و StudentName بترتيب تصاعدي: * / SELECT * من معلومات الطلاب ORDER BY ParentName ASC ، StudentName DESC
مجموعة من
يتم استخدام هذا البيان مع وظائف مجمعة لتجميع مجموعة النتائج حسب عمود واحد أو أكثر.
بناء الجملة
حدد العمود 1 ، العمود 2 ، ... ، العمود من اسم الجدول حيث الحالة المجموعة حسب العمود الاسم (الأسماء) الترتيب حسب اسم العمود (الأسماء)
مثال
- لسرد عدد الطلاب من كل مدينة. حدد العدد (معرف الطالب) ، المدينة من معلومات الطلاب المجموعة حسب المدينة
مجموعات التجميع
تم تقديم مجموعات المجموعات في SQL Server 2008 ، وتستخدم لإنشاء مجموعة النتائج التي يمكن إنشاؤها بواسطة ملف اتحاد الكل من عبارات GROUP BY المتعددة البسيطة.
بناء الجملة
حدد أسماء الأعمدة من TableName GROUP BY GROUPING SETS (ColumnName (s))
مثال
حدد StudentID، StudentName، COUNT (City) من مجموعة StudentsInfo حسب GROUPING SETS ((StudentID، StudentName، City)، (StudentID)، (StudentName)، (City))
نأخذ
يتم استخدام هذا البند في السيناريو حيث أين الكلمة لا يمكن استخدامه.
بناء الجملة
حدد اسم العمود (الأسماء) من اسم الجدول حيث الحالة المجموعة حسب العمود الاسم (الأسماء) التي لها ترتيب الشرط حسب العمود الاسم (الأسماء)
مثال
حدد العدد (معرف الطالب) ، المدينة من معلومات الطلاب المجموعة حسب المدينة بها عدد (معرف الطالب)> 2 ترتيب حسب العدد (معرف الطالب) تنازليًا
إلى
يمكن استخدام الكلمة الأساسية INTO مع ملف عبارة SELECT لنسخ البيانات من جدول إلى آخر. حسنًا ، يمكنك فهم هذه الجداول على أنها جداول مؤقتة. تُستخدم الجداول المؤقتة بشكل عام لإجراء عمليات معالجة على البيانات الموجودة في الجدول ، دون الإخلال بالجدول الأصلي.
بناء الجملة
حدد * في NewTable [IN ExternalDB] من OldTable WHERE Condition
مثال
- لإنشاء نسخة احتياطية من جدول 'StudentsInfo' حدد * INTO StudentsBackup from StudentsInfo - لتحديد عدد قليل فقط من الأعمدة من StudentInfo حدد StudentName ورقم الهاتف إلى الطلاب التفاصيل من موقع StudentInfo حدد * INTO الطلاب من موقع StudentInfo أين المدينة = 'Pune'
مكعب
CUBE هو امتداد لملف عبارة GROUP BY . يسمح لك بإنشاء مجاميع فرعية لجميع مجموعات أعمدة التجميع المحددة في عبارة GROUP BY.
بناء الجملة
حدد اسم (أسماء) العمود من TableName GROUP BY CUBE (ColumnName1 ، ColumnName2 ، ..... ، ColumnNameN)
مثال
حدد معرف الطالب ، العدد (المدينة) من معلومات الطلاب المجموعة حسب المكعب (معرف الطالب) الطلب حسب معرف الطالب
رولوب
ROLLUP هو امتداد لجملة GROUP BY. يتيح لك هذا تضمين الصفوف الإضافية التي تمثل الإجماليات الفرعية. يشار إلى هذه الصفوف فائقة التجميع مع صف الإجمالي الكلي.
بناء الجملة
حدد اسم (أسماء) العمود من TableName GROUP GROUP BY ROLLUP (ColumnName1، ColumnName2، .....، ColumnNameN)
مثال
حدد StudentID ، COUNT (المدينة) من مجموعة معلومات الطلاب حسب ROLLUP (StudentID)
عوض
يتم استخدام جملة OFFSET مع SELECT و ORDER BY بيان لاسترداد مجموعة من السجلات. يجب استخدامه مع عبارة ORDER BY لأنه لا يمكن استخدامه بمفرده. أيضًا ، يجب أن يكون النطاق الذي ذكرته مساويًا أو أكبر من 0. إذا ذكرت قيمة سالبة ، فسيظهر خطأ.
بناء الجملة
حدد أسماء الأعمدة) من TableName حيث ترتيب الشرط حسب العمود اسم (أسماء) OFFSET RowsToSkip ROWS
مثال
النظر في عمود جديد ماركس في ال معلومات الطلاب الطاولة.
حدد اسم الطالب ، واسم الوالدين من معلومات الطلاب ، ترتيب حسب علامات OFFSET 1 ROWS
جلب
يتم استخدام جملة FETCH لإرجاع مجموعة من عدد من الصفوف. يجب استخدامه بالاقتران مع بند OFFSET.
بناء الجملة
حدد أسماء الأعمدة) من TableName حيث ترتيب الشرط حسب العمود اسم (أسماء) OFFSET RowsToSkip FETCH NEXT NumberOfRows ROWS ONLY
مثال
حدد اسم الطالب ، واسم الوالدين من معلومات الطلاب ، الترتيب حسب علامات الأوفست 1 الصفوف التالية 1 الصفوف فقط
أعلى
يتم استخدام عبارة TOP مع عبارة SELECT للإشارة إلى عدد السجلات المراد إرجاعها.
بناء الجملة
حدد اسم العمود (الأسماء) من TableName حيث الحالة
مثال
حدد أفضل 3 * من معلومات الطلاب
المحور
يتم استخدام PIVOT لتدوير الصفوف إلى قيم الأعمدة وتشغيل التجميعات عند الحاجة إلى قيم العمود المتبقية.
بناء الجملة
حدد اسم العمود غير المحوري ، [اسم العمود المحوري الأول] AS ColumnName ، [اسم العمود المحوري الثاني] AS ColumnName ، [اسم العمود المحوري الثالث] AS ColumnName ، ... [Last Pivoted ColumnName] AS ColumnName FROM (استعلام SELECT الذي ينتج البيانات) AS [الاسم المستعار للاستعلام الأولي] PIVOT ([دالة التجميع] (ColumName) لـ [ColumnName الخاص بالعمود الذي ستصبح قيمه رؤوس أعمدة] IN ([اسم العمود المحوري الأول] ، [اسم العمود المحوري الثاني] ، [اسم العمود المحوري الثالث] ... [الأخير عمود محوري])) AS [اسم مستعار للجدول المحوري]
مثال
للحصول على مثال مفصل ، يمكنك الرجوع إلى مقالتي عن SQL PIVOT و UNPIVOT . بعد ذلك في هذا البرنامج التعليمي لـ SQL Server ، دعنا نلقي نظرة على المشغلين المختلفين المدعومين بواسطة Microsoft SQL Server.
العاملين
ال أنواع مختلفة من المشغلين التي يدعمها SQL Server هي كما يلي:
- العمليات الحسابية
- مشغلي التخصيص
- عوامل Bitwise
- عوامل المقارنة
- مشغلي المجمع
- العوامل المنطقية
- عوامل تحليل النطاق
- تعيين المشغلين
- عوامل تشغيل سلسلة السلاسل
دعونا نناقش كل واحد منهم واحدًا تلو الآخر.
العمليات الحسابية
المشغل أو العامل | المعنى | بناء الجملة |
+ | إضافة | التعبير + التعبير |
- | الطرح | التعبير - التعبير |
* | عمليه الضرب | التعبير * التعبير |
/ | قسم | التعبير / التعبير |
٪ | Modulous | التعبير٪ التعبير |
مشغلي التخصيص
المشغل أو العامل | المعنى | بناء الجملة |
= | تخصيص قيمة لمتغير | متغير = 'قيمة' |
عوامل Bitwise
المشغل أو العامل | المعنى | بناء الجملة |
& (أحادي المعامل AND) | تُستخدم لإجراء عملية AND منطقية بت بين قيمتين صحيحتين. | التعبير والتعبير |
& = (إحالة و على مستوى البت) | تُستخدم لإجراء عملية AND منطقية بت بين قيمتين صحيحتين. كما أنه يحدد قيمة لإخراج العملية. | التعبير & = التعبير |
| (على مستوى البت أو) | تُستخدم لإجراء عملية OR منطقية على مستوى البت بين قيمتين صحيحتين مترجمتين إلى تعبيرات ثنائية ضمن عبارات Transact-SQL. | التعبير | التعبير |
| = (إحالة أو على مستوى البت) | تُستخدم لإجراء عملية OR منطقية على مستوى البت بين قيمتين صحيحتين مترجمتين إلى تعبيرات ثنائية ضمن عبارات Transact-SQL. كما أنه يحدد قيمة لإخراج العملية. | تعبير | = تعبير |
^ (حصري على مستوى البت OR) | تُستخدم لإجراء عملية OR حصرية للبت بين قيمتين صحيحتين. | تعبير ^ تعبير انفورماتيكا powercenter التعليمي للمبتدئين |
^ = (تعيين OR حصري على مستوى البت) | تُستخدم لإجراء عملية OR حصرية للبت بين قيمتين صحيحتين. كما أنه يحدد قيمة لإخراج العملية. | تعبير ^ = تعبير |
~ (Bitwise NOT) | يُستخدم لتنفيذ عملية NOT منطقية بت على قيمة عدد صحيح. | ~ التعبير |
عوامل المقارنة
المشغل أو العامل | المعنى | بناء الجملة |
= | يساوي | التعبير = التعبير |
> | أكثر من | التعبير> التعبير |
< | أقل من | التعبير |
> = | أكبر من أو يساوي | التعبير> = التعبير |
<= | اقل او يساوي | التعبير<= expression |
لا يساوي | تعبير تعبيري | |
! = | لا يساوي | التعبير! = التعبير |
!< | ليس أقل من | التعبير ! |
!> | ليس أكبر من | التعبير!> التعبير |
مشغلي المجمع
المشغل أو العامل | المعنى | بناء الجملة |
+ = | يستخدم لإضافة قيمة إلى القيمة الأصلية وتعيين القيمة الأصلية للنتيجة. | التعبير + = التعبير |
- = | يُستخدم لطرح قيمة من القيمة الأصلية وتعيين القيمة الأصلية إلى النتيجة. | التعبير - = التعبير |
* = | يستخدم لمضاعفة القيمة إلى القيمة الأصلية وتعيين القيمة الأصلية إلى النتيجة. | التعبير * = التعبير |
/ = | يستخدم لقسمة قيمة من القيمة الأصلية وتعيين القيمة الأصلية على النتيجة. | التعبير / = التعبير |
٪ = | يستخدم لقسمة قيمة من القيمة الأصلية وتعيين القيمة الأصلية على النتيجة. | التعبير٪ = التعبير |
& = | تُستخدم لإجراء عملية 'AND' على مستوى البت وتعيين القيمة الأصلية على النتيجة. | التعبير & = التعبير |
^ = | تُستخدم لإجراء عملية OR حصرية على مستوى البت وتعيين القيمة الأصلية إلى النتيجة. | تعبير ^ = تعبير |
| = | تُستخدم لإجراء عملية 'أو' على مستوى البت وتعيين القيمة الأصلية على النتيجة. | تعبير | = تعبير |
العوامل المنطقية
المشغل أو العامل | المعنى | بناء الجملة |
الكل | تُرجع TRUE إذا كانت كل مجموعة المقارنات صحيحة. | scalar_expression! = ALL (استعلام فرعي) |
و | تُرجع TRUE إذا كان كلا التعبيرين صحيحين. | boolean_expression AND boolean_expression |
أي | إرجاع TRUE إذا كان أي من مجموعة المقارنات TRUE. | الحجم_التعبير! = {أي} (استعلام فرعي) |
ما بين | تُرجع TRUE إذا كان المعامل داخل نطاق. | عينة التعبير [ليس] بين بدء التعبير والتعبير النهائي |
EXISTS | لعرض TRUE إذا احتوى استعلام فرعي على أي صفوف. | EXISTS (استعلام فرعي) |
في | تُرجع TRUE إذا كان المعامل يساوي واحدًا من قائمة التعبيرات. | test_expression [NOT] IN (استعلام | تعبير فرعي [، ... n]) |
تُرجع TRUE إذا تطابق المعامل مع نمط. | match_expression [NOT] LIKE pattern [ESCAPE escape_character] | |
ليس | يعكس قيمة أي عامل تشغيل منطقي. | [ليس] تعبير_ منطقي |
أو | تُرجع TRUE إذا كان أي من التعبيرات المنطقية تساوي TRUE. | boolean_expression أو boolean_expression |
بعض | تُرجع TRUE إذا كانت بعض مجموعة المقارنات صحيحة. | الحجمي<= { SOME} ( subquery ) |
عوامل تحليل النطاق
المشغل أو العامل | المعنى | مثال |
:: | يوفر الوصول إلى أعضاء ثابتة من نوع بيانات مركب. أنواع البيانات المركبة هي أنواع البيانات التي تحتوي على طرق متعددة وأنواع بيانات بسيطة. أنواع البيانات المركبة وتشمل أنواع CLR المضمنة وأنواع SQLCLR المعرفة من قبل المستخدم (UDTs). | DECLAREhid hierarchyid SELECThid = hierarchyid :: GetRoot () PRINT @ hid.ToString () |
تعيين المشغلين
هناك ثلاث عمليات مجموعة بشكل أساسي:اتحادوتتقاطعوناقص. يمكنك الرجوع إلى الصورة أدناه لفهم العمليات المحددة في SQL. الرجوع إلى الصورة أدناه:
المشغل أو العامل | المعنى | بناء الجملة |
اتحاد | يتم استخدام عامل التشغيل UNION لدمج مجموعة النتائج المكونة من عبارتين SELECT أو أكثر. | حدد اسم (أسماء) العمود من جدول 1 اتحاد حدد اسم (أسماء) العمود من جدول 2 |
تتقاطع | يتم استخدام جملة INTERSECT للجمع بين اثنينتحديدالعبارات وإرجاع تقاطع مجموعات البيانات لكل من عبارات SELECT. | حدد العمود 1 ، العمود 2…. من TableName أين الشرط تتقاطع حدد العمود 1 ، العمود 2…. من TableName أين الشرط |
إلا | يُرجع عامل التشغيل EXCEPT تلك المجموعات التي تم إرجاعها بواسطة عملية SELECT الأولى ، ولا يتم إرجاعها بواسطة عملية SELECT الثانية. | حدد اسم العمود من TableName إلا حدد اسم العمود من TableName |
عوامل السلسلة
المشغل أو العامل | المعنى | النحو / المثال |
+ (تسلسل السلسلة) | يربط بين اثنين أو أكثر من السلاسل الثنائية أو سلاسل الأحرف ، أو الأعمدة ، أو مجموعة من السلاسل وأسماء الأعمدة في تعبير واحد | التعبير + التعبير |
+ = (تسلسل السلسلة) | يُستخدم لربط سلسلتين وتعيين السلسلة إلى نتيجة العملية. | التعبير + = التعبير |
٪ (أحرف البدل المراد مطابقتها) | يستخدم لمطابقة أي سلسلة من صفر أو أكثر من الأحرف. | مثال: 'عينة٪' |
[] (أحرف البدل للمطابقة) | يستخدم لمطابقة حرف واحد ضمن النطاق المحدد أو المجموعة المحددة بين قوسين []. | مثال: m [n-z]٪ ’ |
[^] (أحرف البدل المراد مطابقتها) | يُستخدم لمطابقة حرف واحد ليس ضمن النطاق أو المجموعة المحددة بين الأقواس المربعة. | مثال: 'Al [^ a]٪' |
_ (أحرف البدل للمطابقة) | يستخدم لمطابقة حرف واحد في عملية مقارنة سلسلة | test_expression [NOT] IN (استعلام | تعبير فرعي [، ... n]) |
مجموع المهام
المختلف وظائف مجمعة التي يدعمها SQL Server هي كما يلي:
وظيفة | وصف | بناء الجملة | مثال |
مجموع() | يُستخدم لإرجاع مجموع مجموعة القيم. | حدد المجموع (اسم العمود) من TableName | حدد مجموع (علامات) من StudentInfo |
العدد () | تُرجع عدد الصفوف بناءً على شرط أو بدون شرط. | حدد العدد (اسم العمود) من TableName أين الحالة | حدد العدد (StudentID) من StudentsInfo |
AVG () | يستخدم لحساب متوسط قيمة عمود رقمي. | حدد AVG (اسم العمود) من TableName | حدد AVG (علامات) من StudentInfo |
دقيقة () | تقوم هذه الدالة بإرجاع الحد الأدنى لقيمة العمود. | حدد MIN (اسم العمود) من TableName | حدد MIN (علامات) من StudentInfo |
ماكس () | ترجع الحد الأقصى لقيمة العمود. | حدد MAX (اسم العمود) من TableName | حدد الحد الأقصى (علامات) من معلومات الطلاب |
أول() | تُستخدم لإرجاع القيمة الأولى للعمود. | حدد FIRST (ColumnName) من TableName | حدد أولاً (علامات) من StudentInfo |
الاخير() | ترجع هذه الدالة القيمة الأخيرة للعمود. | حدد الأخير (اسم العمود) من TableName | حدد آخر (علامات) من StudentInfo |
وظائف من تحديد المستخدم
يسمح Microsoft SQL Server للمستخدمين بإنشاء وظائف محددة من قبل المستخدم وهي إجراءات. تقبل هذه الإجراءات المعلمات ، ويمكنها تنفيذ إجراءات بسيطة إلى معقدة وإرجاع نتيجة هذا الإجراء المعين كقيمة. هنا ، يمكن أن تكون القيمة التي يتم إرجاعها إما قيمة عددية واحدة أو مجموعة نتائج كاملة.
يمكنك استخدام الوظائف المعرفة من قبل المستخدم من أجل:
- السماح للبرمجة المعيارية
- تقليل حركة مرور الشبكة
- السماح بتنفيذ أسرع للاستعلامات
أيضًا ، هناك أنواع مختلفة من الوظائف المعرفة من قبل المستخدم التي يمكنك إنشاؤها. هم انهم:
- وظائف عددي: اعتادإرجاع قيمة بيانات واحدة من النوع المحدد في بند RETURNS.
- وظائف الجدول: اعتادالعودة أالطاولةنوع البيانات.
- وظائف النظام: يتم توفير مجموعة متنوعة من وظائف النظام بواسطة SQL Server لإجراء عمليات مختلفة.
حسنًا ، بصرف النظر عن الوظائف المعرفة من قبل المستخدم ، هناك مجموعة من الوظائف المضمنة في SQL Server والتي يمكن استخدامها لأداء مجموعة متنوعة من المهام. بالانتقال في هذه المقالة حول البرنامج التعليمي لـ SQL Server ، دعنا الآن نفهم ما هي الاستعلامات المتداخلة.
استعلامات متداخلة
استعلامات متداخلة هي تلك الاستعلامات التي لها استعلام خارجي واستعلام فرعي داخلي. لذلك ، في الأساس ، الاستعلام الفرعي هو استعلام متداخل في استعلام آخر مثل SELECT أو INSERT أو UPDATE أو DELETE. الرجوع إلى الصورة أدناه:
بعد ذلك في هذا البرنامج التعليمي لـ SQL Server ، دعنا نفهم الأنواع المختلفة من الصلات في SQL.
ينضم
تُستخدم لدمج المجموعات من جدولين أو أكثر ، بناءً على عمود مرتبط بين الجداول. هناك أربعة أنواع من الصلات:
- صلة داخلية: إرجاع السجلات التي لها قيم متطابقة في كلا الجدولين.
- الانضمام إلى اليسار: إرجاع السجلات من الجدول الأيسر ، وكذلك السجلات التي تفي بالشرط من الجدول الأيمن.
- الحق في الانضمام: إرجاع السجلات من الجدول الأيمن ، وكذلك السجلات التي تفي بالشرط من الجدول الأيسر.
- انضمام كامل: إرجاع السجلات التي لها تطابق في الجدول الأيمن أو الأيسر.
ضع في الاعتبار الجدول التالي جنبًا إلى جنب مع جدول معلومات الطلاب لفهم بنية الصلات.
معرف الموضوع | هوية الطالب | اسم الموضوع |
10 | 10 | رياضيات |
2 | أحد عشر | الفيزياء |
3 | 12 | كيمياء |
صلة داخلية
بناء الجملة
حدد اسم العمود (الأسماء) من جدول 1 INNER JOIN Table2 على Table1.ColumnName = Table2.ColumnName
مثال
حدد الموضوعات ، معرف الموضوع ، معلومات الطلاب ، اسم الطالب من الموضوعات ، INNER انضم إلى معلومات الطلاب حول المواد الدراسية. StudentID = معرفات الطلاب.
الانضمام إلى اليسار
بناء الجملة
حدد اسم العمود (الأسماء) من جدول 1 LEFT JOIN Table2 ON Table1.ColumnName = Table2.ColumnName
مثال
حدد StudentInfo.StudentName والموضوعات معرّف الموضوع من StudentInfo LEFT JOIN المواضيع الموجودة على موقع StudentsInfo.SubjectID = المواد معرّف الموضوع ترتيب من قبل StudentsInfo.StudentName
الحق في الانضمام
بناء الجملة
حدد اسم العمود (الأسماء) من جدول 1 RIGHT JOIN Table2 على Table1.ColumnName = Table2.ColumnName
مثال
حدد StudentInfo.StudentName والموضوعات معرّف الموضوع من StudentInfo RIGHT JOIN المواضيع في ملف StudentsInfo.SubjectID = المواد معرّف الموضوع ترتيب من قبل StudentsInfo.StudentName
انضمام كامل
بناء الجملة
حدد اسم العمود (الأسماء) من جدول 1 FULL OUTER JOIN Table2 على Table1.ColumnName = Table2.ColumnName
مثال
حدد StudentInfo.StudentName والموضوعات معرّف الموضوع من StudentInfo مواد الانضمام الخارجية الكاملة الموجودة على موقع StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName
بعد ذلك ، في هذه المقالة حول البرنامج التعليمي لـ SQL Server ، دعنا نفهم الأنواع المختلفة من الحلقات التي يدعمها SQL Server.
الحلقات
أوامر التحكم في التدفق المختلفة هي كما يلي:
دعونا نناقش كل واحد منهم واحدًا تلو الآخر.
ابدأ .. تنتهي
تستخدم هذه الكلمات الأساسية لتضمين سلسلة من عبارات SQL. بعد ذلك ، يمكن تنفيذ هذه المجموعة من عبارات SQL.
بناء الجملة
بيان البدء بلوك النهاية
استراحة
تستخدم هذه العبارة للخروج من حلقة WHILE الحالية. في هذه الحالة ، تكون حلقة WHILE الحالية متداخلة داخل حلقة أخرى ، ثم تخرج عبارة BREAK الحلقة الحالية فقط ويتم تمرير عنصر التحكم إلى العبارة التالية في الحلقة الحالية. تُستخدم عبارة BREAK عمومًا داخل جملة IF.
بناء الجملة
استراحة
استمر
يتم استخدام عبارة CONTINUE لإعادة تشغيل حلقة WHILE. لذلك ، سيتم تجاهل أي عبارات بعد الكلمة الأساسية CONTINUE.
بناء الجملة
استمر
هنا ، Label هي النقطة التي تبدأ بعدها المعالجة إذا تم استهداف GOTO لتلك التسمية المعينة.
اذهب إلى
يستخدم لتغيير مسار التنفيذ إلى التسمية. يتم تخطي البيانات المكتوبة بعد الكلمة الأساسية GOTO وتستمر المعالجة عند التسمية.
بناء الجملة
تعريف التسمية: التسمية: تغيير التنفيذ: تسمية GOTO
هنا ، Label هي النقطة التي تبدأ بعدها المعالجة إذا تم استهداف GOTO لتلك التسمية المعينة.
لو غير هذا
مثل أي لغة برمجة أخرى ، تختبر جملة If-else في SQL Server الشرط وإذا كان الشرط خاطئًا ، فسيتم تنفيذ عبارة 'else'.
بناء الجملة
IF BooleanExpression StatementBlock [ELSE StatementBlock]
إرجاع
يستخدم للخروج بدون شروط من استعلام أو إجراء. لذلك ، لا يتم تنفيذ البيانات المكتوبة بعد بند RETURN.
بناء الجملة
RETURN [عدد صحيح]
هنا ، يتم إرجاع قيمة عدد صحيح.
أنتظر لأجل
يتم استخدام تدفق التحكم WAITFOR لمنع تنفيذ إجراء مخزن أو معاملة أو دفعة حتى يتم تعديل عبارة معينة ، وإرجاع صف واحد على الأقل أو انقضاء وقت أو فترة زمنية محددة.
بناء الجملة
WAITFOR (GetConversionGroupStatement)] [، مهلة TIMEOUT]
أين،
- تأخير - الفترة الزمنية التي يجب أن تمر
- TimeToPass - صمهلة من وقت الانتظار
- زمن - الالوقت الذي يتم فيه تشغيل الإجراء المخزن أو المعاملة أو الدُفعة.
- TimeToExecute - الالوقت الذي ينتهي فيه بيان WAITFOR.
- استلام البيان - إلىبيان صالح RECEIVE.
- GetConversionGroupStatement - إلىبيان GET CONVERSATION GROUP صالح.
- مهلة TIMEOUT - يحدد الفترة الزمنية بالمللي ثانية لانتظار وصول رسالة إلى قائمة الانتظار.
في حين
تُستخدم هذه الحلقة لتعيين شرط للتنفيذ المتكرر لعبارة SQL معينة أو كتلة عبارة SQL. يتم تنفيذ البيانات طالما أن الشرط المذكور من قبل المستخدم هو TRUE. بمجرد فشل الشرط ، تتوقف الحلقة عن التنفيذ.
بناء الجملة
بينما BooleanExpression StatementBlock
الآن ، بعد أن عرفتم يا رفاق أوامر DML ، دعنا ننتقل إلى القسم التاليفي هذه المقالة حول تعليمي SQL ، أي أوامر DCL.
أوامر لغة التحكم في البيانات (DCL)
سيعطيك هذا القسم من البرنامج التعليمي لـ SQL Server فكرة عن الأمر الذي يتم استخدامه لفرض أمان قاعدة البيانات في بيئات قواعد بيانات مستخدمين متعددة. الأوامر هي كما يلي:
منحة
يتم استخدام الأمر GRANT لتوفير الوصول أو الامتيازات على قاعدة البيانات وكائناتها للمستخدمين.
بناء الجملة
كيفية استخدام الانتظار والإخطار في جافا
منح الامتياز على اسم الكائن إلى اسم الدور [مع خيار المنح]
أين،
- اسم الامتياز - هو الامتياز / الحق / الوصول الممنوح للمستخدم.
- اسم الكائن - اسم كائن قاعدة البيانات مثل TABLE / VIEW / STORED PROC.
- اسم المستخدم - اسم المستخدم الذي تم منحه حق الوصول / الحقوق / الامتيازات.
- عامة - لمنح حقوق الوصول لجميع المستخدمين.
- اسم الدور - اسم مجموعة الامتيازات المجمعة معًا.
- مع خيار المنحة - لمنح المستخدم حق الوصول لمنح المستخدمين الآخرين الحقوق.
مثال
- لمنح إذن 'تحديد' لجدول 'معلومات الطلاب' للمستخدم 1 منح 'تحديد معلومات الطلاب' إلى المستخدم 1
سحب او إبطال
يتم استخدام الأمر REVOKE لسحب امتيازات وصول المستخدم الممنوحة باستخدام أمر GRANT.
بناء الجملة
REVOKE PrivilegeName on ObjectName من العامة
مثال
- لإلغاء الإذن الممنوح من user1 REVOKE SELECT ON StudentsInfo TO user1
الانتقال إلى هذا البرنامج التعليمي لـ SQL Server ، دعنا نفهم كيفية إنشاء واستخدام الإجراءات المخزنة.
الإجراءات المخزنة
الإجراءات المخزنة وحدات قابلة لإعادة الاستخدام تغلف منطق عمل معين للتطبيق. لذلك ، فهي مجموعة من عبارات SQL والمنطق ، تم تجميعها وتخزينها معًا لأداء مهمة محددة.
بناء الجملة
إنشاء [أو استبدال] الإجراء_اسم [(اسم_المعلمة [IN | OUT | IN OUT] النوع [])] هو BEGIN [مقطع_إعلان] قابل للتنفيذ // عبارة SQL المستخدمة في الإجراء المخزن END GO
مثال
- قم بإنشاء إجراء سيعيد اسم الطالب عندما يتم إعطاء معرف الطالب كمعامل إدخال للإجراء المخزن إنشاء PROCEDURE GetStudentName (StudentId INT ، - معلمة الإدخال ،StudName VARCHAR (50) OUT - معلمة الإخراج ، AS ابدأ حددStudName = اسم الطالب من معلومات الطلاب حيث StudentID = @ StudentId END
خطوات التنفيذ:
- DeclareStudName بالشكل nvarchar (50)
- EXEC GetStudentName 01 ، إخراجStudName
- حددStudName
يقوم الإجراء أعلاه بإرجاع اسم طالب معين ،على إعطاء هوية الطلاب كمدخلات. بعد ذلك في هذا البرنامج التعليمي لـ SQL Server ، دعنا نفهم أوامر لغة التحكم في المعاملات.
أوامر لغة التحكم في المعاملات (TCL)
سيعطيك هذا القسم من برنامج SQL Server التعليمي نظرة ثاقبة للأوامر المستخدمة لإدارة المعاملات في قاعدة البيانات.الأوامر هي كما يلي:
ارتكب
يتم استخدام الأمر COMMIT لحفظ المعاملة في قاعدة البيانات.
بناء الجملة
ارتكب
رول باك
يتم استخدام الأمر ROLLBACK لاستعادة قاعدة البيانات إلى آخر حالة تم الالتزام بها.
بناء الجملة
رول باك
ملحوظة: عند استخدام ROLLBACK مع SAVEPOINT ، يمكنك الانتقال مباشرةً إلى نقطة حفظ في معاملة جارية. بناء الجملة: ROLLBACK TO SavepointName
حفظ نقطة
يتم استخدام الأمر SAVEPOINT لحفظ المعاملة مؤقتًا. لذلك إذا كنت ترغب في التراجع إلى أي نقطة ، فيمكنك حفظ هذه النقطة باسم 'SAVEPOINT'.
بناء الجملة
SAVEPOINT SAVEPOINTNAME
انظر في الجدول أدناه لفهم عمل المعاملات في قاعدة البيانات.
هوية الطالب | أسم الطالب |
واحد | روهيت |
2 | سوهانا |
3 | اشيش |
4 | بريرنا |
الآن ، استخدم أدناه لفهم المعاملات في قاعدة البيانات.
INSERT INTO StudentTable VALUES (5، 'Avinash') قم بتحديث StudentTable SET name = 'Akash' حيث id = '5' SAVEPOINT S1 INSERT INTO StudentTable VALUES (6، 'Sanjana') SAVEPOINT S2 INSERT INTO StudentTable VALUES ') حفظ S3 INSERT INTO StudentTable VALUES (8 ، 'Veena') وفر S4 حدد * من StudentTable
بعد ذلك في هذه المقالة حول البرنامج التعليمي لـ SQL Server ، دعنا نفهم كيفية التعامل مع الاستثناءات في Transact-SQL.
معالجة الاستثناء
هناك نوعان من الاستثناءات ، أي الاستثناءات التي يحددها النظام والاستثناءات التي يحددها المستخدم. كما يوحي الاسم ، فإن معالجة الاستثناءات هي عملية يمكن للمستخدم من خلالها معالجة الاستثناءات التي تم إنشاؤها. للتعامل مع الاستثناءات ، يجب أن تفهم عبارات تدفق التحكم التالية:
يرمي
يتم استخدام هذا الشرط لرفع استثناء ونقل التنفيذ إلى كتلة CATCH من بناء TRY… CATCH.
بناء الجملة
إلقاء [ErrorNumber،localvariable، State] []
أين،
- رقم خاطئ - إلىثابت أو متغير يمثل الاستثناء.
- رسالة - إلىمتغير أو سلسلة تصف الاستثناء.
- حالة -ثابت أو متغير بين 0 و 255 يشير إلى الحالة المراد ربطها بالرسالة.
THROW 51000 ، 'السجل غير موجود.' ، 1
جرب .. اصطدم
تستخدم لتنفيذ معالجة الاستثناءات في Transact-SQL. يمكن تضمين مجموعة من العبارات في كتلة 'المحاولة'. في حالة حدوث خطأ في كتلة المحاولة ، يتم تمرير التحكم إلى مجموعة أخرى من العبارات المضمنة في كتلة CATCH.
بناء الجملة
BEGIN TRY StatementBlock END TRY BEGIN CATCH [StatementBlock] END CATCH []
ابدأ في محاولة التحديد * من معلومات الطلاب ، النهاية ، حاول البدء في تحديد CATCH ، حدد ERROR_NUMBER () مثل ErNum ، ERROR_MESSAGE () AS ErMsg END CATCH
في بهذا ، نصل إلى نهاية هذه المقالة حول تعليمي SQL Server. أتمنى أن تكون قد استمتعت بقراءة هذا المقال حول دروس SQL Server للمبتدئين.أنا إذا كنت ترغب في الحصول على تدريب منظم على MySQL ، فراجع الذي يأتي مع تدريب مباشر بقيادة مدرب وخبرة مشروع واقعية. سيساعدك هذا التدريب على فهم MySQL بعمق ويساعدك على تحقيق إتقان الموضوع. لديك سؤال لنا؟ يرجى ذكر ذلك في قسم التعليقات في ' البرنامج التعليمي لـ SQL Server 'وسأعود إليك.