في هذا الدرس 6تصفّح المواضيع
لفتح جلسة اتصال تفاعلية مع خادم MySQL عبر نافذة الطرفية، نستخدم أمر العميل mysql مع أربعة معاملات قياسية:
- المعامل
-h 127.0.0.1: يحدد عنوان المضيف (Host) الذي يعمل عليه خادم MySQL. - المعامل
-P 3306(بحرف P كبير): يحدد رقم منفذ الاتصال TCP. - المعامل
-u root: يحدد اسم حساب المستخدم في قاعدة البيانات. - المعامل
-p(بحرف p صغير): يطلب إدخال كلمة المرور بشكل مخفي وآمن دون إظهارها في سجل الأوامر.
-- Once connected at the mysql> prompt, verify user and host
SELECT
USER(),
CURRENT_USER(),
CONNECTION_ID();
فور نجاح الاتصال وظهور المحث التفاعلي mysql>، يمكنك فحص بيئة الجلسة الحالية وتوقيت الخادم ووضع الصرامة قبل تنفيذ الاستعلامات:
- استعلام الإصدار والوقت:
SELECT VERSION(), NOW();للتحقق من إصدار الخادم وتوقيته الفعلي. - فحص وضع الصرامة (
sql_mode): للتأكد من تفعيل قواعد التحقق الصارمة من البيانات في MySQL 8. - إنهاء الجلسة بأمان: يُستخدم الأمر
QUIT;أوEXIT;لإغلاق الاتصال بالخادم بشكل سليم.
-- Check server time, connection ID, and strict SQL mode
SELECT
NOW(),
CONNECTION_ID(),
@@sql_mode;
تخضع كل جملة في لغة SQL لبنية قياسية واضحة تتكون من كلمات محجوزة (Keywords) ومقاطع (Clauses) وفاصلة الإنهاء:
- الفاصلة المنقوطة (
;): تمثل علامة نهاية الأمر في SQL؛ فإذا ضغطت مفتاح الإدخال بدونها ينتقل المؤشر إلى سطر فرعي (->) بانتظار استكمال الجملة. - مرونة المسافات والأسطر: يتجاهل محلل SQL المسافات الإضافية وتعدد الأسطر، مما يتيح لك تنسيق الاستعلامات الطويلة بوضوح.
-- Multi-line formatting makes SQL easy to read and review
SELECT
VERSION(),
CURRENT_DATE(),
CURRENT_TIME();
يساعدك فهم قواعد حساسية الأحرف الكبيرة والصغيرة في MySQL على تجنب الأخطاء عند نقل مشروعك من جهاز التطوير إلى خادم الإنتاج:
- الكلمات المحجوزة والدوال (غير حساسة لحالة الأحرف): ينفذ الخادم كلمة
SELECTأوselectبنفس النتيجة، ولكن المعيار الاحترافي هو كتابة كلمات SQL بالأحرف الكبيرة (UPPERCASE). - أسماء القواعد والجداول (تعتمد على نظام التشغيل): في نظام Linux تكون الأسماء حساسة لحالة الأحرف افتراضياً، بينما في Windows لا تفرق؛ لذا التزم دائماً بكتابتها بأحرف صغيرة مع الشرطة السفلية (
snake_case). - علامات الاقتباس الخلفية (
`...`): يستخدم MySQL علامة الـ Backtick لحماية أسماء المعرفات عند الحاجة.
-- Check how the host OS handles identifier case sensitivity
SELECT
@@lower_case_table_names,
@@version_compile_os;
يدعم خادم MySQL 8.4 ثلاثة أنماط لكتابة التعليقات التوضيحية داخل ملفات واستعلامات SQL:
- التعليق القياسي المفرد (
-- comment): يبدأ بشرطتين متبوعتين بمسافة واحدة على الأقل (شرط إلزامي في MySQL) ويمتد لنهاية السطر. - التعليق المفرد بعلامة المربع (
# comment): خاص بخادم MySQL ويمتد من علامة#حتى نهاية السطر. - التعليق المتعدد الأسطر (
/* ... */): يبدأ بـ/*وينتهي بـ*/لتوثيق فقرة كاملة.
-- 1. Standard ANSI SQL single-line comment (space required)
# 2. MySQL hash single-line comment
/* 3. Multi-line block comment
for query documentation */
SELECT VERSION(), CURRENT_USER();
تنقسم جميع أوامر لغة SQL التي ستتقنها في هذا الكورس إلى خمسة تصنيفات قياسية موضحة في الجدول المرجعي التالي:
| التصنيف | الاسم الكامل | الوظيفة الأساسية | أبرز الكلمات المفتاحية |
|---|---|---|---|
| DDL | لغة تعريف البيانات (Data Definition) | إنشاء وتعديل وحذف هياكل القواعد والجداول | CREATE, ALTER, DROP, TRUNCATE |
| DML | لغة معالجة البيانات (Data Manipulation) | إدراج وتحديث وحذف السجلات داخل الجداول | INSERT, UPDATE, DELETE |
| DQL | لغة استعلام البيانات (Data Query) | استرجاع البيانات وتصفيتها وتحليلها | SELECT |
| TCL | لغة التحكم بالمعاملات (Transaction Control) | اعتماد المعاملات أو التراجع عنها بأمان | START TRANSACTION, COMMIT, ROLLBACK |
| DCL | لغة التحكم بالصلاحيات (Data Control) | منح وسحب صلاحيات الوصول للمستخدمين | GRANT, REVOKE |
-- Run a clean DQL check of server version and current timestamp
SELECT VERSION(), NOW(), CURRENT_USER();
ملخص الدرس
حصاد الدرسمراجعة مركّزة لأهم المفاهيم والقواعد الهندسية التي أتقنتها في هذا الدرس قبل التطبيق العملي
ماذا تعلّمت في هذا الدرس؟
تعرفت في هذا الدرس على طريقة الاتصال بخادم MySQL عبر معاملات سطر الأوامر وفحص الجلسة النشطة، وقواعد إنهاء الجمل بالفاصلة المنقوطة، وحساسية الأحرف في الأسماء، وأنماط التعليقات الثلاثة، والتصنيفات الخمسة لأوامر SQL.
الخطوة التالية والدرس القادم
انتقل الآن إلى الموديول الثاني والدرس الخامس «إنشاء قواعد البيانات وعرضها واختيارها في MySQL» لتطبيق أوامر CREATE DATABASE وSHOW DATABASES وUSE عملياً.
سجّل الدخول لحفظ تقدمك
تابع إنجاز المواضيع والمصطلحات والمهام، وكمّل من آخر خطوة على أي جهاز.
المصطلحات4
راجع المعنى، اشرحه لنفسك، ثم علّم البطاقة كمفهومة.
- 01 MySQL Connection الاتصال والقواعد
- تعلّم الاتصال بخادم MySQL وقواعد كتابة أوامر SQL بأسلوب MySQL 8 الحديث مع أمثلة استعلامات SQL وتطبيقات تفاعلية.
- للمراجعة
- 02 Connecting via MySQL CLI Client الاتصال بالخادم عبر سطر الأوامر
- المفهوم الهندسي والتطبيق العملي المباشر لقسم الاتصال بالخادم عبر سطر الأوامر في MySQL 8.4.
- للمراجعة
- 03 Inspecting Active Server Session فحص حالة جلسة الاتصال النشطة
- المفهوم الهندسي والتطبيق العملي المباشر لقسم فحص حالة جلسة الاتصال النشطة في MySQL 8.4.
- للمراجعة
- 04 SQL Statement Rules and Semicolons قواعد جمل SQL والفاصلة المنقوطة
- المفهوم الهندسي والتطبيق العملي المباشر لقسم قواعد جمل SQL والفاصلة المنقوطة في MySQL 8.4.
- للمراجعة
لا توجد بطاقات تطابق البحث والتصفية.
اقرأ البطاقات بحرية. سجّل الدخول لحفظ تقدم مراجعتك.
الاختصارات4
راجع المعنى، اشرحه لنفسك، ثم علّم البطاقة كمفهومة.
- 01 DDL DDL
- Data Definition Language
- أوامر تعريف البيانات المسؤولة عن إنشاء وتعديل وحذف هياكل قواعد البيانات والجداول.
- للمراجعة
- 02 DML DML
- Data Manipulation Language
- أوامر معالجة البيانات المسؤولة عن إدراج وتعديل وحذف السجلات داخل الجداول.
- للمراجعة
- 03 DQL DQL
- Data Query Language
- أوامر استعلام البيانات (SELECT) المخصصة لاسترجاع السجلات وتحليلها.
- للمراجعة
- 04 DCL DCL
- Data Control Language
- أوامر التحكم بالصلاحيات (GRANT و REVOKE) لإدارة أذونات المستخدمين والأمان.
- للمراجعة
لا توجد بطاقات تطابق البحث والتصفية.
اقرأ البطاقات بحرية. سجّل الدخول لحفظ تقدم مراجعتك.
مهامك قبل الاختبار
خطوة صغيرة كل مرة. وإنجاز تقدر ترجع له.
-
نفّذ أمثلة SQL المشروحة في قسم الاتصال بالخادم عبر سطر الأوامر على خادم MySQL 8 المحلي وتحقق من النتيجة.
-
بدّل بين الحالات الثلاث في المحاكي التفاعلي ضمن قسم فحص حالة جلسة الاتصال النشطة وقارن مخرجات خادم MySQL.
تأشير المهمة إقرار منك بإتمامها، وليس تصحيحًا آليًا للكود. يُحفظ تقدمك في حسابك.
اختبر فهمك.
ووصلها للإتقان.
كل سؤال خطوة لقدّام. اختار، اكتب كود، وشوف نتيجتك فورًا.
أكمل المهام، واجمع كل الإجابات الصحيحة. أقل من 100%؟ راجع وأعد المحاولة.
الأسئلة متاحة للاطلاع. سجّل الدخول للتفاعل وحفظ تقدمك.
لمحة عن التحدي8 أسئلة تنتظرك +
في أمر الاتصال mysql -h 127.0.0.1 -P 3306 -u root -p، ما الفرق بين حرف -P الكبير وحرف -p الصغير؟
حرف -P الكبير يحدد رقم منفذ الشبكة (Port)، بينما حرف -p الصغير يطلب كلمة المرور (Password).
ما العلامة القياسية التي تنهي جملة SQL في عميل MySQL ليبدأ الخادم بتنفيذها؟
الفاصلة المنقوطة (;) هي علامة إنهاء الجملة القياسية في لغة SQL.
الكلمات المفتاحية في لغة SQL مثل SELECT و SHOW حساسة لحالة الأحرف في MySQL وتفشل إذا كُتبت بأحرف صغيرة.
خطأ؛ الكلمات المفتاحية في SQL غير حساسة لحالة الأحرف، وإن كان كتابتها بالأحرف الكبيرة هو المعيار الاحترافي.
لماذا يُنصح دائماً بتسمية قواعد البيانات والجداول بأحرف إنجليزية صغيرة مع الشرطة السفلية (snake_case) في MySQL؟
لأن خوادم Linux تعامل أسماء القواعد والجداول بحساسية لحالة الأحرف افتراضياً على عكس Windows، مما يمنع أخطاء النقل.
أي من الصيغ التالية تُعد صيغة تعليق صحيحة في خادم MySQL 8.4؟ (اختر كل ما ينطبق)
يدعم خادم MySQL التعليق بشرطتين متبوعتين بمسافة (-- )، والتعليق بعلامة #، والتعليق المتعدد الأسطر /* ... */.
في خادم MySQL، يتطلب التعليق المبدوء بشرطتين (--) وجود مسافة واحدة على الأقل بعد الشرطتين مباشرةً.
صواب؛ يشترط محلل MySQL وجود مسافة بعد الشرطتين لتمييز التعليق عن العمليات الحسابية السالبة.
إلى أي تصنيف من تصنيفات لغة SQL تنتمي أوامر بناء وتعديل الهياكل CREATE و ALTER و DROP؟
تنتمي أوامر تعريف الهياكل CREATE و ALTER و DROP إلى لغة تعريف البيانات DDL.
ما وضع SQL المفعّل افتراضياً في MySQL 8 الذي يرفض القيم غير الصالحة أو الخارجة عن النطاق برسالة خطأ بدلاً من قصّها بصمت؟
يفعّل وضع STRICT_TRANS_TABLES التحقق الصارم من البيانات في MySQL 8.