SQL أسلوب كتابة الأوامر

مبادئ كتابة الكود في SQL

في البداية عليك معرفة أن كل ما ستتعلمه في هذا الدرس عبارة عن شرح نظري لأساليب كتابة الكود.
إذاَ في هذا الدرس ستتعلم كيف تكتب كود SQL بشكل صحيح يفهمه الكمبيوتر و يفهمه أي شخص يحاول قراءة الكود الذي ستقوم أنت بكتابته مستقبلاً عند بناء قواعد بيانات.

قبل البدء بذكر أساليب الكتابة نود الإشارة إلى أن ما سنذكره قد لا يكون إتباعه إجبارياً دائماً أو أنك لست مجبر على اتباعه في كل الحالات, و لكن إذا أردت العمل باحترافية و بدقة عالية فكن دائماً دقيق و منظم في الكتابة و اعتمد الأسلوب الذي ستتعلمه في هذا الدرس لأنه سيسهل عليك كتابة الأوامر بشكل كبير.

كيفية التفرقة بين أوامر SQL و الكلمات العادية

أي كلمة تكتبها في الإستعلام ستكون إما كلمة من أوامر SQL و إما كلمة ترمز لشيء أنت نفسك قمت بتعريفه في قاعدة البيانات.

أوامر SQL أكتبها دائماً بأحرف كبيرة لأن ذلك سيجعلك تفرّق بسهولة بين أوامر SQL و الكلمات الأخرى المكتوبة في نص الإستعلام.

الأشياء التي قمت أنت بتعريفها و إعطاءها أسماءها; مثل إسم قاعدة البيانات, إسم جدول في قاعدة البيانات, إسم حقل في الجدول, إسم دالة قمت بتعريفها إلخ..
عند كتابة إستعلامات للتعامل مع الأشياء التي قمت أنت بتعريفها, يجب أن تكتب أسماء الأشياء التي قمت بتعريفها تماماً كما قمت بتعريفها في الأساس.
فمثلاً إذا قمت بتعريف قاعدة بيانات إسمها harmash فيجب أن تتعامل معها بإسم harmash و ليس بإسم Harmash حتى لو كان هذا الأمر لا يسبب أي مشكلة.

في الأمثلة التالية لا تركز بمعنى الكود لأننا سنشرحه لك بتفصيل في دروس لاحقة, ركز فقط بالشكل الذي كتبنا فيه الكود.



المثال الأول

الكود التالي عبارة عن إستعلام ( Query ) يحتوي على أمر واحد فقط.
الكلمات التي تظهر باللون الأزرق هي كلمات خاصة بلغة SQL لهذا كتبناها بأحرف كبيرة.
الكلمة users تمثل إسم جدول إفترضنا أننا قمنا بتعريف إسمه بهذا بأحرف صغيرة لهذا قمنا بكتابته في الإستعلام بهذا الشكل أيضاً.

SELECT * FROM users;
	


المثال الثاني

في حال قمت بكتابة أوامر SQL بأحرف صغيرة فإن ذلك لا يسبب أي مشكلة.
ملاحظة: كتابة الكود هكذا لا تسبب مشكلة و لكن ينصح بعدم إتباع هذه الأسلوب لأنه يفضل أن تكتب أوامر SQL بأحرف كبيرة.

select * from users;
	


المثال الثالث

في حال قمت بكتابة أوامر SQL بأحرف صغيرة و كبيرة في نفس الوقت فإن ذلك لا يسبب أي مشكلة.
ملاحظة: كتابة الكود هكذا لا تسبب مشكلة و لكن ينصح بعدم إتباع هذه الأسلوب إطلاقاً لأنه الأسلوب الأسوء على الإطلاق و لا أحد يستخدمه.

Select * From users;
	


المثال الرابع

في حال كانت الأشياء التي قمت بتعريفها مكتوبة بغير الطريقة التي كتبتها بها فإن ذلك على الأغلب سيؤدي لظهور أخطاء في الإستعلام.
هنا افترضنا أن أوامر SQL مكتوبة بأفضل أسلوب و لكن المشكلة هي في الكلمات الأخرى الموضوعة في الإستعلام و نقصد كلمة Users.
في حال كان الجدول الذي تحاول أن تتعامل معه إسمه users بالأساس و لكنك في الإستعلام كتبت Users فإنه يوجد إحتمال كبير أن يظهر لك خطأ في الإستعلام.

SELECT * FROM Users;
	

هل وضع فاصلة منقوطة ; ضروري في نهاية أوامر SQL؟

هناك حالات تضطر لوضعها فيها و هناك حالات يكون لك الحرية في وضعها أو عدم وضعها كالتالي:

  • إذا كنت تكتب أمر SQL واحد و تريد تنفيذه, في هذه الحالة لا داعي لها.
  • في حال قمت بتجهيز أكثر من أمر SQL و تريد تنفيذهم الواحد تلو الآخر, في هذه الحالة أنت مجبر على وضع فاصلة منقوطة في نهاية كل أمر لأنك بذلك تحدد لخادم قاعدة البيانات ( MySQL ) أين يبدأ و ينتهي كل أمر.
  • هناك أوامر لا تطلّب وضع فاصلة منقوطة في نهايتها مثل الأمر USE حتى لو كنت تنوي تنفيذ عدة أوامر بعده.

ننصحك دائماً بأن تضع فاصلة منقوطة في نهاية كل أمر تكتبه حتى تتجنب الوقوع في مشاكل تداخل الأوامر بسبب نسيان وضع الفاصلة المنقوطة.
في هذه الدورة سنضع فاصلة منقوطة في نهاية كل أمر.

إنتبه من جديد, قلنا أننا سنضع فاصلة منقوطة في نهاية كل أمر و ليس في نهاية كل سطر, حيث أن الأمر في SQL يمكن كتابته على سطر واحد أو على عدة أسطر.
إذاً سواء كتبت الأمر على سطر واحد أو على عدة أسطر فذلك لا يؤثر إطلاقاً كما وضحنا في الأمثلة التالية.



المثال الأول

في المثال التالي وضعنا أمر واحد و كتبناه على سطر واحد.

SELECT id, phone, email FROM users;
	


المثال الثاني

في المثال التالي وضعنا نفس الأمر و لكننا كتبناه على سطرين.

SELECT id, phone, email
FROM users;
	


المثال الثالث

في المثال التالي وضعنا نفس الأمر و لكننا كتبناه على أربعة أسطر.

SELECT
	id, phone, email
FROM
	users;
	

في النهاية, أكتب دائماً الكود بالطريقة التي ترتاح أنت فيها و التي تجد أنها أنسب لما تفعله.
فمثلاً إذا كان الإستعلام صغير, فكتابته على سطر واحد لا مشكلة بها. أما إن كان الإستعلام معقد و كبير فستجد أن تقسيمه على عدة أسطر أفضل لك بكثير.

الكلمات المحجوزة في SQL

جميع الكلمات التالية تستخدم في كتابة أوامر SQL, و يفضّل عدم إستخدامها كأسماء للجداول, الحقول أو الدوال التي نعرّفها في قواعد البيانات.

ADD
ALTER
ALL
AND
ANY
ASC
AUTO_INCREMENT
BACKUP
BETWEEN
CASE
CHECK
COLUMN
CONSTRAINT
CREATE
DATABASE
DEFAULT
DELETE
DISTINCT
DROP
DEFAULT
EXEC
EXISTS
FOREIGN
FROM
FULL
HAVING
INDEX
INNER
INSERT
INTO
IS
JOIN
KEY
LEFT
LIKE
LIMIT
NOT
NULL
OR
ORDER BY
OUTER
UPDATE
REPLACE
RIGHT
ROWNUM
SELTECT
SET
TABLE
TRUNCATE
TOP
UNIQUE
UNION
VALUES
VIEW
PRIMARY
PROCEDURE
WHERE

بشكل عام هذه الكلمات هي نفسها في كل قواعد البيانات و تستخدم بنفس الطريقة و نود الإشارة إلى أن لكل قاعدة بيانات قد يكون هناك بعض الكلمات الإضافية الخاصة بها و لكن هذه الكلمات تعتبر الأساس و الأكثر استخداماً.

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة