تدريب مباشر بالموقع بالاضافة الى قائمة مرجع لاغلب الاوامر في قاعدة البيانات
السلام عليكم ورحمة الله وبركاته:ـ
مرحبا بالاكاديمي: في هذا القسم سوف نتناول تفاصيل كثيرة عن قاعدة البيانات وما هي الاوامر التي من الممكن ان تستخدمها في جامعتك او عملك
في هذا الصفحة سوف نتحدث عن تعاريف قاعدة البيانات واستخدامتها الصفحة التي تليها سوف تكون تطبيق عملي مباشر بالموقع اتمنى ان تنال الدروس اعجابكم. بالتوفيق
SQL يتيح لك إنشاء وجهات النظر في قاعدة بيانات
SQL تتمكن من تعيين الأذونات على الجداول والإجراءات والآراء
SQL هو معيار - ولكن ....
على الرغم من أن SQL
هو معيار أنسي (المعهد الوطني الأمريكي للمعايير)، هناك إصدارات مختلفة من لغة SQL .
ومع ذلك، لتكون متوافقة مع معيار أنسي، فإنها جميعا تدعم على الأقل الأوامر الرئيسية
(مثل select، update، delete، where) بطريقة مماثلة.
SQL تستطيع استخدام في موقع الويب الخاص بك
لإنشاء موقع ويب يعرض بيانات من قاعدة بيانات، ستحتاج إلى:
برنامج قاعدة بيانات
لاستخدام لغة البرمجة النصية من جانب الخادم
SQL تحتاج لاستخدامه للحصول على البيانات التي تريدها
لاستخدام هتمل لتصميم الصفحة ما
SQL هي لغة قياسية للوصول إلى قواعد البيانات والتعامل معها.
SQL ماذا يعني؟
SQL تعتبر لغة الاستعلام المنظمة
SQL يتيح لك الوصول إلى قواعد البيانات والتعامل معها
SQL هو معيار أنسي (المعهد الوطني الأمريكي للمعايير)
ماذا يمكن أن تفعل SQL ؟
SQL تتمكن منتنفيذ استعلامات ضد قاعدة بيانات
SQL تتمكن من استرداد البيانات من قاعدة بيانات
SQL تتمكن من إدراج السجلات في قاعدة بيانات
SQL يتيح لك تحديث السجلات في قاعدة بيانات
SQL يتيح لك حذف السجلات من قاعدة بيانات
SQL يتيح لك إنشاء قواعد بيانات جديدة
SQL يتيح لك إنشاء سكل جداول جديدة في قاعدة بيانات
SQL يتيح لك إنشاء الإجراءات المخزنة في قاعدة بيانات
SQL اوامر | الصيغة الصحيحة | شرح |
---|---|---|
AND / OR |
SELECT column_name(s) FROM table_name WHERE condition AND|OR condition |
هذا الامر يحدد لك امرين معا او احد الامرين. مثال, تبحث عن اشخاص باسم ماجد و يوسف. او الخيار الثاني تبحث عن ماجد او يوسف بقائمة البيانات لديك |
ALTER TABLE |
ALTER TABLE table_name ADD column_name datatype or
ALTER TABLE table_name |
هذا الامر يكون بمثابة اضافة عمود جديد لجدول البيانات او حذفه |
AS (alias) |
SELECT column_name AS column_alias FROM table_name or
SELECT column_name |
يتم إنشاؤها لجعل العمود المحدد أكثر قابلية للقراءة, مثال بقاعدة البيانات تكون الاسماء مشبوكة كـ اسم_العميل في هذا الامر نستطيع ان نضغ "اسمع العميل " هكذا بدون مسافات |
BETWEEN |
SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2 |
بين المشغل يختار القيم ضمن نطاق معين. يمكن أن تكون القيم أرقام أو نصوص أو تواريخ |
CREATE DATABASE | CREATE DATABASE database_name | إنشاء قاعدة البيانات |
CREATE TABLE |
CREATE TABLE table_name ( column_name1 data_type, column_name2 data_type, column_name3 data_type, ... ) |
انشاء جدول بيانات و وضع التعريفات لكل عمود على حسب القيمة كرقم او كنص او كتاريخ الى اخره |
CREATE INDEX |
CREATE INDEX index_name ON table_name (column_name) or
CREATE UNIQUE INDEX index_name |
يتم إنشاء عبارة إندكس لإنشاء الفهارس في الجداول. وتستخدم الفهارس لاسترداد البيانات من قاعدة البيانات بسرعة كبيرة. لا يمكن للمستخدمين رؤية الفهارس، فهي تستخدم فقط لتسريع عمليات البحث / الاستعلامات. |
CREATE VIEW |
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition |
لإنشاء بيان بغية تحديد وجهة نظر، وهو الجدول المنطقي القائم على واحد أو أكثر .... "بناء الجملة من أجل كائنات مخطط وأجزاء في البيانات SQL" |
DELETE |
DELETE FROM table_name WHERE some_column=some_value or
DELETE FROM table_name
DELETE * FROM table_name |
يقوم ديليت بإزالة سجل واحد أو أكثر من جدول. قد يتم تعريف مجموعة فرعية للحذف باستخدام شرط، وإلا يتم إزالة كافة السجلات. |
DROP DATABASE | DROP DATABASE database_name | يزيل قاعدة البيانات من دليل قاعدة البيانات لديك يعني حذفها بشكل كامل وفقدان معلوماتها الا في حالة كان لديك نسخة منها. |
DROP INDEX |
DROP INDEX table_name.index_name (SQL Server) DROP INDEX index_name ON table_name (MS Access) DROP INDEX index_name (DB2/Oracle) ALTER TABLE table_name DROP INDEX index_name (MySQL) |
يزيل قاعدة البيانات من دليل قاعدة البيانات لديك يعني حذفها بشكل كامل وفقدان معلوماتها الا في حالة كان لديك نسخة منها. |
DROP TABLE | DROP TABLE table_name | ازالة جدول البيانات في قاعدة البيانات لديك كلياً مما يعني فقدان كافة المعلومات ولن تستطيع استرجاعها الا اذا كان لديك نسخة منها |
EXISTS | IF EXISTS (SELECT * FROM table_name WHERE id = ?) BEGIN --do what needs to be done if exists END ELSE BEGIN --do what needs to be done if not END |
يتم استخدام الشرط الموجود بالاقتران مع طلب بحث فرعي ويعتبر متلبعا، إذا كان طلب البحث الفرعي يعرض صف واحد على الأقل. ويمكن استخدامه في SELECT, INSERT, UPDATE, or DELETE. |
GROUP BY |
SELECT column_name, aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name |
يستخدم بند بالتعاون مع عبارة GROUP BY لترتيب البيانات متطابقة إلى مجموعات SELECT بند يتبع جملة GROUP BY في عبارة WHERE SELECT ORDER BY وتسبق جملة |
HAVING |
SELECT column_name, aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name HAVING aggregate_function(column_name) operator value |
SQL SELECT ويحدد بند في مزود بأن بيان SQL يجب أن تعود الصفوف فقط حيث تلتقي القيم الإجمالية للشروط المحددة. تم إضافته إلى لغة لأن الكلمة حيث لا يمكن استخدامها مع دالات التجميع |
IN |
SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2,..) |
تحدد القيمة في مجموعة من قيم معينة يعني مثلاً تريد البحث عن مدن في المملكة العربية السعودية و مصر وهكذا |
INSERT INTO |
INSERT INTO table_name VALUES (value1, value2, value3,....) or
INSERT INTO table_name |
بعد انشاء جدول بيانات تحتاج الى ادخل المعلومات وبهذا الكود تستطيع ادخال البيانات على حسب القيم التي وضعتها في جدول البيانات لديك ويجب ان تحافظ على الترتيب |
INNER JOIN |
SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON table_name1.column_name=table_name2.column_name |
بإنشاء جدول نتائج جديد من خلال الجمع بين قيم العمود لجدولين (الجدول 1 والجدول 2) استنادا إلى تسلسل الربط. يقارن الاستعلام كل صف من الجدول 1 مع كل صف من الجدول 2 للعثور على كافة أزواج من الصفوف التي تفي ارتباط المسند. |
LEFT JOIN |
SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON table_name1.column_name=table_name2.column_name |
تقوم الكلمة الرئيسية بإرجاع كافة السجلات من الجدول الأيسر (الجدول1)، والسجلات المطابقة من الجدول الأيمن (الجدول 2). والنتيجة هي نول من الجانب الأيمن، إذا لم يكن هناك تطابق. |
RIGHT JOIN |
SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON table_name1.column_name=table_name2.column_name |
تقوم الكلمة الرئيسية بإرجاع كافة السجلات من الجدول الأيمن (الجدول 2) والسجلات المطابقة من الجدول الأيمن (الجدول 1). والنتيجة هي نول من الجانب الأيسر، عندما لا يكون هناك تطابق. |
FULL JOIN |
SELECT column_name(s) FROM table_name1 FULL JOIN table_name2 ON table_name1.column_name=table_name2.column_name |
الكلمة الرئيسية كافة السجلات عندما يكون هناك تطابق في يسار (الجدول 1) أو اليمين (الجدول 2) سجلات الجدول |
LIKE |
SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern |
يتم استخدام جملة لمقارنة قيمة إلى قيم مماثلة باستخدام عوامل تشغيل أحرف البدل. هناك نوعان من أحرف البدل المستخدمة بالتزامن مع مشغل ليك |
ORDER BY |
SELECT column_name(s) FROM table_name ORDER BY column_name [ASC|DESC] |
يحدد في قاعدة البيانات أن عبارة بإرجاع نتيجة تعيين مع الصفوف التي يتم فرزها بواسطة قيم عمود واحد أو أكثر |
SELECT |
SELECT column_name(s) FROM table_name |
يعيد البيان مجموعة نتائج السجلات من جدول واحد أو أكثر. يقوم كشف سيليكت باسترداد صفين أو أكثر من جدول قاعدة بيانات واحد أو أكثر أو مشاهدة قاعدة البيانات |
SELECT * |
SELECT * FROM table_name |
بهذا الامر انت تطلب ان يعرض لك جدول معين من قاعدة البيانات لديك كاملة الاعمدة |
SELECT DISTINCT |
SELECT DISTINCT column_name(s) FROM table_name |
يتم استخدام البيان فقط لعرض قيم متميزة (مختلفة). داخل جدول، عمود غالبا ما يحتوي على العديد من القيم المكررة؛ وأحيانا كنت ترغب فقط في قائمة مختلفة (متميزة) القيم |
SELECT INTO |
SELECT * INTO new_table_name [IN externaldatabase] FROM old_table_name or
SELECT column_name(s) |
SELECT بيان بإنشاء جدول جديد وبملء مع مجموعة النتائج من |
SELECT TOP |
SELECT TOP number|percent column_name(s) FROM table_name |
الامر هذا يعرض لك الرقم او النسبة الاعلى في جدول البيانات او قاعدة البيانات على حسب تحديدك للخيار |
TRUNCATE TABLE | TRUNCATE TABLE table_name | جدول بيانات |
UNION |
SELECT column_name(s) FROM table_name1 UNION SELECT column_name(s) FROM table_name2 |
عبارة تجمع بين نتائج استعلامين لقواعد البيانات في جدول واحد لكل الصفوف المطابقة. يجب أن يؤدي الاستعلامان إلى نفس عدد الأعمدة وأنواع البيانات المتوافقة من أجل توحيدها |
UNION ALL |
SELECT column_name(s) FROM table_name1 UNION ALL SELECT column_name(s) FROM table_name2 |
المشغل للجمع بين مجموعات النتائج من 2 أو أكثر من عبارات سيليكت. فإنه لا إزالة الصفوف مكررة بين قواعد البيانات المختلفة |
UPDATE |
UPDATE table_name SET column1=value, column2=value,... WHERE some_column=some_value |
تغيير بيانات سجل واحد أو أكثر في جدول. |
WHERE |
SELECT column_name(s) FROM table_name WHERE column_name operator value |
SQL DML ليست شروط إلزامية البيانات SQL DML ولكن يمكن استخدامها للحد من عدد الصفوف التي تأثرت عبارة أو إرجاعها بواسطة استعلام |