النافذة العربية للبرمجة

النافذة العربية للبرمجة
 
الرئيسيةالمشاركاتمكتبة الصورس .و .جبحـثالأعضاءالمجموعاتالتسجيلدخول

شاطر | 
 

 مقدمة عن SQL

اذهب الى الأسفل 
كاتب الموضوعرسالة
عبدالهادي الحداد
مدير الموقع
avatar

عدد الرسائل : 483
العمر : 33
الموقع : اليمن الحبيبة
العمل/الترفيه : طالب برمجة
تاريخ التسجيل : 13/06/2008

بطاقة الشخصية
المدير العام / عبدالهادي الحداد:

مُساهمةموضوع: مقدمة عن SQL   الأحد يونيو 15, 2008 9:47 am

سلاااااااام عليكم ورحمة الله وبركاته ..

نظرا لانتشار ثغرات SQL injection وسهوله اكتشافها .....
لابد نعطي فكره عن الــSQL لكي يتمكن الكل من كتابه استثمار لهذه الثغرات ..
راح ابدا بالتدرج وان شالله علي قد مايسمح الوقت نكتب ..

ماهي :
Structured Query Language لغه الاستعلام البنائيه تسمح لك بدخول قواعد البيانات وتنفيذ استعلامات عليها وهي لغه معياريه لــANSI .

مميزاتها :

1- تمكنك من تنفيذ استعلامات علي قواعد البيانات
2-ادراج ريكورد (صفوف) الي جدول ما
3-حذف ريكورد من جدول ما
4- تحديث ريكورد من جدول ما
5- سهله التعلم
كبدايه يجب ان تفهم ان قواعد البيانات مكونه من جداول الجدول يحتوي علي صفوف الصف يسمي ريكورد ويحتوي علي بيانات ..... لاتنسي ان الجدول يعرف باسمه .

ارسم علي ورقه قدامك جدول اسمة (خوياي) خليه اربع اعمده الاول اسمه الثاني ابوه الثالث تلفونه الرابع مدينته .

اوكيه خلي الجدول يحتوي علي ثلاث ريكورد وادخل في كل ريكود معلومات واحد من خوياك
نفرض ان الجدول التالي تكون :

=========================
اسمه | ابوه | تليفونه | مدينته
احمد | محمد | 555 | نواكشوط
يونس |شلبي | 545 | الجيزه
ريم | موسي |878 | دلهي
=========================

افرض انه جدول بقاعده بيانات وتبي تنفذ بعض الاستفسارات عن طريق SQL ......مثال
تبي تستفسر عن جميع اسماء خوياك .
اكيد راح تقول : اختر العامود اسمه من الجدول اخوياي ....... والاستعلام هذا راح يرجعلك كل اسماء خوياك
كيف هي صيغه SQL للامر اللي كتبنا ....كالتالي :

SQL
select column from table

طبعا column كان باستعلامنا (اسمه) والــtable (اخوياي ) ...... شفت سهله كيف ؟
---------------------

الان الــDML جزء من الــSQL وتعني Data Manipulation Language وهي اوامر الاستعلام والتحديث والادراج والحذف في لغه SQL
اوامرها :
SELECT استعلام جدول معين وعرض النتيجه
UPDATE تحديث الجداول في قاعده البيانات
DELETE حذف بيانات من جدول ما
INSERT INTO ادخال بيانات جديده لجدول ما
--------------------

وفيه الــDDL وتعني Data Definition Language وهي جزء من SQL مسوول عن انشاء وحذف الجداول في قاعده البيانات كما يتم من خلالها انشاء الفهارس وتحديد الروابط بين الجداول
اوامرها :
CREATE TABLE انشاء جدول
ALTER TABLE تغيير جدول
DROP TABLE حذف جدول
CREATE INDEX انشاء فهرس
DROP INDEX حذف فهرس
اولاااا :SELECT
استخدامه : اختيار بيانات من جدول معين
كود:


SQL
SELECT column_names
FROM table_name

شرح :
column_names ممكن يكون عامود واحد او عده اعمده
table_name اسم جدول في قاعده البيانات

سوال : من جدول (اخوياي) استعلم عن الاعمده (ابوه + رقمه) عن طريق اوامر SQL ?
كذلك تستطيع استبدال اسم العمود بــ (*) نجمه لاختيار جميع الاعمده
ملاحظه : اضافه الفاصله المنقوطه بعد الــ SQL statement تمكنك من كتابه اكثر من استعلام علي نفس السطر
معياريا لا يجب وضع فاصله منقوطه بعد كل SQL statement لكن تم الاعتياد علي هذا الشي فحاول انك تتعود علي
وضعها بعد كل SQL
statement حتي لو كانت وحدها في السطر
==============

الان SELECT DISTINCT نفس SELECT بس الفرق انه تمنع تكرار النتائج يعني اذا تطابقت نتيجتين تظهر وحده بس
==============

الان WHERE Clause تضاف لــSELECT لاختيار قيم تستوفي شروط معينه
صيغته

كود:


SQL
SELECT column FROM table WHERE column operator value


operator يكون واحد من التالي :
= يساوي
<> لايساوي
> اكبر من
< اصغر من
>= اكبر من او يساوي
<= اصغر من او يساوي
BETWEEN بين حدي نطاق معطي
LIKE مشابه لتخطيط معين
اوكيه تدريب اخر : من جدول (اخوياي) وباستعمال where حدد اقصر اسم في العامود (اسمة)؟
ملاحظه : الــvalue اذا كانت حرفيه يجب احاطتها بفواصل وفي بعض انظمه قواعد البيانات بفاصله مزدزجه اما
الرقميه فلا تحاط بفواصل
كلمة اخيره عن like تستطيع تحديد المخططات بالعلامه % يعني اذا تبي شي فيه الحرفين Op تستخدم %op %
ادراج ريكورد (صف) جديد الي جدول
صيغته :



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


وتقدر تحدد الاعامود اللي بتدرج فيه المعلومات بالصيغه التاليه :



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


===========================
الان جاء دور الستيتمنت update
استخدامه : لتعديل قيم موجوده في جدول معين وتحديثها
صيغتها



SQL
UPDATE table_name
SET column_name = new_value
WHERE column_name = some_value

=========================

الان Delete
استخدامه :حذف ريكورد من جدول
صيغته :

كود:


SQL
DELETE FROM table_name WHERE column_name = some_value


========================

بكذا اكون القيت الضوء علي ابرز الـstatement في الـSQL واللي راح تمكنك من فهم اي استعلام عند رويته ..


عدل سابقا من قبل عبدالهادي الحداد في السبت يوليو 05, 2008 4:11 pm عدل 2 مرات (السبب : تعديل العنوان)
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://awfm.boardlog.com
جابر



عدد الرسائل : 31
تاريخ التسجيل : 12/07/2008

بطاقة الشخصية
المدير العام / عبدالهادي الحداد:

مُساهمةموضوع: رد: مقدمة عن SQL   الثلاثاء يوليو 22, 2008 11:07 am

مشكووووووووووووووووووووووووووووووووووووووووووووووووووووووووووور أخي عبدجالهادي الحداد على هذا الموضوع
وجزاك الله ألف خير وننتظر المزيد
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو
عبدالهادي الحداد
مدير الموقع
avatar

عدد الرسائل : 483
العمر : 33
الموقع : اليمن الحبيبة
العمل/الترفيه : طالب برمجة
تاريخ التسجيل : 13/06/2008

بطاقة الشخصية
المدير العام / عبدالهادي الحداد:

مُساهمةموضوع: رد: مقدمة عن SQL   الخميس أغسطس 14, 2008 7:14 am

مشكوووووووووور الاخ جابر
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو http://awfm.boardlog.com
محترف
مبرمج رائع
مبرمج رائع
avatar

عدد الرسائل : 144
العمر : 32
تاريخ التسجيل : 22/07/2008

بطاقة الشخصية
المدير العام / عبدالهادي الحداد:

مُساهمةموضوع: رد: مقدمة عن SQL   السبت أغسطس 23, 2008 5:49 am


مشكووووووووووووووور أخوي الغالي وجزاك الله ألف خير

bounce
bouncebounce
bouncebouncebounce
bouncebouncebouncebounce
bouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebouncebouncebounce
bounce
bouncebounce
bouncebouncebounce
bouncebouncebouncebounce
bouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebounce
bouncebouncebouncebounce
bouncebouncebounce
bouncebounce
bounce

bouncebouncebouncebouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebouncebounce
bouncebouncebouncebouncebounce
bouncebouncebouncebounce
bouncebouncebounce
bouncebounce
bounce
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو
sas48
عضو جديد
عضو جديد
avatar

عدد الرسائل : 29
تاريخ التسجيل : 02/09/2008

مُساهمةموضوع: رد: مقدمة عن SQL   الأحد سبتمبر 07, 2008 11:40 am

thank you
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو
 
مقدمة عن SQL
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
النافذة العربية للبرمجة :: قسم قواعد البيانات :: منتدى ال SQL العام-
انتقل الى: