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

شرح لغة الاستعلامات الهيكلية SQL

اذهب الى الأسفل

شرح لغة الاستعلامات الهيكلية SQL  Empty شرح لغة الاستعلامات الهيكلية SQL

مُساهمة من طرف المبرمج الطموح الأربعاء مايو 22, 2013 9:00 am

أخوانى اعضاء المنتدى الكرام

اولا وقبل البدء فى الشرح اود ان اذكر مصدر الشرح للأمانه هذه الدروس منقوله عن موقع [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ولقد قمت انا فقط بترجمتها وتضويح وتعديل بعض النقاط الصغيره بها وجميع حقوق نسخ هذا الموضوع تعود للفريق العربى للبرمجه [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]

سيكون هذا الشرح عباره عن مرجع شامل لجمل SQL



اولا مقدمه فى SQL :

هى لغه قياسيه من لغات الحاسب لدخول ومعالجه قواعد البيانات

ما هى SQL : Structured Query Language لغه بناء الأستعلامات الهيكليه (يعنى هى الترجمه حرفيه شويه)

1- هى لغه قياسيه من لغات الحاسب الخاصه بمعهد ANSI
2- تمكنك من الدخول لقواعد البيانات
3- تمكنك من إستخراج البيانات من القاعده
4- تمكنك من إضافه بيانات إلى قاعده البيانات
5- تمكنك من من حذف بيانات من القاعده
6- تمكنك من تعديل البيانات المسجله
7- أخيرا هى لغه سهله التعلم والفهم


لغه SQL هى لغه قياسيه :هى لغه من اللغات القياسيه الخاصه بمعهد ANSI (American National Standards Institute) تمكنك من دخول ومعالجه نظم قواعد البيانات Database System
جمل SQL تعمل مع برامج قواعد البيانات مثل : Ms-Access, Ms-SQL Server, DB2, Oracle, etc.

تنقسم لغه SQL إلى قسمين :

1- SQL Data Manipulation Language (DML)

هو القسم المسئول عن : معالجه البيانات

1- Select : إستخراج البيانات من قاعده البيانات
2- INSERT INTO : إضافه بيانات جديده
3- Update : التعديل على البيانات المسجله
4-Delete : حذف البيانات من القاعده


2- Data Definition Language (DDL) هو القسم المسئول عن : تعريف البيانات

1- Create Database : لأنشاء قاعده بيانات جديده
2- Create Table : لأنشاء جدول داخل قاعده بيانات
3- ALTER TABLE : للتعديل فى الجدول
4- DROP TABLE : لحذف الجدول من قاعده البيانات
5- CREATE INDEX : لأنشاء مفتاح للبحث
6- DROP INDEX : لحذف مفتاح البحث


أولا جمله Select

تستخدم فى إستخراج بيانات من داخل الجدول حسب المطلوب Syntax تكتب الجمله كالتالى:

الكود:

SELECT column_name(s)
FROM table_name

ملاحظه هامه : جمل SQL غير حساسه لحاله الحروف لا يوجد فرق SELECT = select

مثال على الجدول التالى :

شرح لغة الاستعلامات الهيكلية SQL  982697752

نريد أختيار الأسم الأول و الأسم الأخير (FirstName , LastName) تكتب الجمله كالتالى :

الكود:
SELECT LastName,FirstName FROM Persons

ويكون الناتج كالتالى :


شرح لغة الاستعلامات الهيكلية SQL  262747047
لأختيار جميع البيانات تكتب كالتالى :

الكود:
SELECT * FROM Persons

وتكون النتيجه كالتالى :


شرح لغة الاستعلامات الهيكلية SQL  531431610

ملاحظه هامه : بعض نظم إداره قواعد البيانات تتطلب وجود ( ; ) فى نهايه جمله SQL وهذا لان بعض النظم تدعم تنفيذ أكثر من جمله فى نفس الوقت.من النظم التى لا تحتاج إلى ( ; ) Ms-Access – Ms-Sql server .ام من الأنظمه التى تتطلب ( ; ) Oracle .


________________________________________
الأن نندرج لجمله أخرى او إضافه لجمله SELECT وهى جمله SELECT DISTINCT

إضافه كلمه DISTINCT للجمله تمكنك من العرض القيم بدون تكرار (يعنى لو الجدول فيه بيان متكرر اكتر من مره بتعرضه مره واحده بس) .

مثال : على أستخدام DISTINCT وعدم أستخدامها

الكود:
SELECT Company FROM Orders


شرح لغة الاستعلامات الهيكلية SQL  446925639
هنا واضح الفرق عند أستخدام DISTINCT

الكود:
SELECT DISTINCT Company FROM Orders


شرح لغة الاستعلامات الهيكلية SQL  299885923

شرح لغة الاستعلامات الهيكلية SQL  887736968

الان ننتقل لجزء اخر الا وهو استخدام الشرط استخدام عباره WHERE تأتى بعد جمله Select وتحتوى على الشرط المطلوب ويكون بنائها بهذا الشكل :

الكود:

SELECT column FROM table
WHERE column operator value

مع جمله Where يمكننا أستخدام المعاملات الأتيه :


شرح لغة الاستعلامات الهيكلية SQL  624437340
ملاحظه هامه : فى بعض الأصدارات من SQL المعامل <> يكتب هكذا !=

________________________________________
مثال على أستخدام عباره Where

الكود:

SELECT * FROM Persons
WHERE City='Sandnes'


شرح لغة الاستعلامات الهيكلية SQL  243808638



ملاحظه هامه : على أستخدام علامه التنصيص مع الجمله ( ' ) يجب أستخدام علامه تنصيص مفرده مع القيم النصيه مثل الأسماء اما بالنسبه للبيانات الرقميه تكتبه من دون علامات .

مثال على ذلك :

الكود:

For text values: للبيانات النصيه

This is correct:طريقه صحيحه

SELECT * FROM Persons WHERE FirstName='Tove'

This is wrong:طريقه خاطئه

SELECT * FROM Persons WHERE FirstName=Tove


For numeric values: للبيانات الرقميه

الكود:

This is correct:طريقه صحيحه
SELECT * FROM Persons WHERE Year>1965
This is wrong: طريقه خاطئه
SELECT * FROM Persons WHERE Year>'1965'


________________________________________
استخدام المعامل Like فى الشرط

تستخدم فى تحديد البحث بكلمه معينه مثال البحث عن كل الأسماء الموجود بها حرف او كلمه معينه .Syntax بنائها بهذا الشكل
الكود:

SELECT column FROM table
WHERE column LIKE pattern

تستخدم علامه ( % ) لتحديد عدد الحروف قبل و بعد الكلمه او الحرف الذى نبحث به مثال :

فى هذه الحاله سوف تظهر اسماء الأشخاص التى تبدا بحرف Aثم يأتى بعدها اى عدد من الحروف

الكود:

SELECT * FROM Persons
WHERE FirstName LIKE 'a%'

فى هذه الحاله سوف تظهر اسماء الأشخاص التى تنتهى بحرف A ويكون قبلها اى عدد من الحروف

الكود:

SELECT * FROM Persons
WHERE FirstName LIKE '%a'

فى هذه الحاله سوف تظهر اسماء الأشخاص التى تحتوى على حرف A فى أى موضوع فى الأسم

الكود:

SELECT * FROM Persons
WHERE FirstName LIKE '%la%'

بقى لنا الجزء الخاص بـ Between وسوف نندرج إليه فيما بعد.



الان ننتقل لجزء جديد الا وهو التعامل مع البيانات :يوجد لدينا ثلاثه تعاملات مع البيانات
1- إضافه : INSERT INTO

2-تعديل : UPDATE

3- حذف : DELETE

اولا إصافه صف للجدول : INSERT INTO

يكون بنائها كالتالى :

الكود:

INSERT INTO table_name
VALUES (value1, value2,....)

ويمكنك ايضا تحديد الحقول المطلوب إضافتها فقط وتكون كالتالى :

الكود:


INSERT INTO table_name (column1, column2,...)
VALUES (value1, value2,....)

مثال إضافه صف جديد للجدول التالى :

الكود:

INSERT INTO Persons
VALUES ('Hetland', 'Camilla', 'Hagabakka 24', 'Sandnes')


شرح لغة الاستعلامات الهيكلية SQL  677322394
لإضافه بيانات فى أعمده (حقول) محدده فقط تكتب كالتالى :

الكود:

INSERT INTO Persons (LastName, Address)
VALUES ('Rasmussen', 'Storgt 67')


تكون النتيجه كالتالى :


شرح لغة الاستعلامات الهيكلية SQL  190586853

ثانيا التعديل فى الجدول : UPDATE

يكون بناء الجمله كالتالى :
الكود:


UPDATE table_name
SET column_name = new_value
WHERE column_name = some_value


مثال على التعديل على الجدول الحالى :

لإضافه الأسم الأول فى الصف الثانى :
الكود:

UPDATE Person SET FirstName = 'Nina'
WHERE LastName = 'Rasmussen'


شرح لغة الاستعلامات الهيكلية SQL  183879855

لإضافه أسم المدينه وتغير العنوان :تعديل أكثر من عمود فى نفس الوقت

الكود:

UPDATE Person
SET Address = 'Stien 12', City = 'Stavanger'
WHERE LastName = 'Rasmussen'

النتيجه

شرح لغة الاستعلامات الهيكلية SQL  468461695

ثالثا الحذف من الجدول : DELETE


تستخدم فى حذف الصفوف من الجدول وبنائها كالتالى :
الكود:

DELETE FROM table_name
WHERE column_name = some_value

مثال على حذف صف من الجدول :لحذف الصف

الكود:
DELETE FROM Person WHERE LastName = 'Rasmussen'


شرح لغة الاستعلامات الهيكلية SQL  134396156
لحذف جميع البيانات ( الصفوف ) من الجدول

تستخدم الجمله التاليه :

الكود:

DELETE FROM table_name
or
DELETE * FROM table_name

________________________________________
تم بحمد الله تعالى الجزء الأول من الدرس والخاص بـ SQL Data Manipulation Language (DML)
وسوف نكمل معا باذن الله الجزء الثانى الخاص بـ SQL FUNCTION

تحياتى للجميع

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
المبرمج الطموح
المبرمج الطموح
الاشراف
الاشراف

تاريخ التسجيل : 18/02/2011
المساهمات : 207
النقاط : 368
التقيم : 17
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

شرح لغة الاستعلامات الهيكلية SQL  Empty رد: شرح لغة الاستعلامات الهيكلية SQL

مُساهمة من طرف زهراء السبت مايو 25, 2013 6:44 am

بارك الله فيك اخى الكريم ...درس رائع فعلا
زهراء
زهراء
........
........

تاريخ التسجيل : 18/02/2011
المساهمات : 438
النقاط : 769
التقيم : 67
الدولة : مصر
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

شرح لغة الاستعلامات الهيكلية SQL  Empty رد: شرح لغة الاستعلامات الهيكلية SQL

مُساهمة من طرف م/موسي الإثنين أكتوبر 29, 2018 8:31 am

تحياتى لك اخى الكريم على هذا المجهود
م/موسي
م/موسي
الاشراف
الاشراف

تاريخ التسجيل : 18/02/2011
المساهمات : 178
النقاط : 346
التقيم : 12
الدولة : تونس
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى