تعلم sql في 6 دقائق و بدون معلم
2 مشترك
صفحة 1 من اصل 1
تعلم sql في 6 دقائق و بدون معلم
السلام عليكم
اليكم هذا الشرح عن SQL
تعريف sql
الكلمه SQL هي اختصار Structured Query Language و معناها (لغة الاستعلام البنيويه) , تستخدم هذه اللغه في التعامل مع قواعد البيانات و لاستخراج و تحديث و اضافة البيانات من قاعدة البيانات و غالبا ما يتم استخدام هذا النوع من قواعد البيانات في المواقع التي تستخدم التقنيات الشهيره مثل الـ PHP , أو في تطبيقات الحاسوب التي تحتاج لقواعد بيانات , و كما نرى ان اغلب برامج الويب تعتمد على الــ SQL من خلال البرنامج الشهير MySQL , وماقد يخفي عليك أن تعلمك ل SQL يغنيك عن معرفة و access و Mysql و oracle و sql server ... كل شيء ستقوم به بواسطة SQL وتجدر الإشارة أن كل هذه البرامج إضافة أنها تدعم SQL فلكل منها لغة خاصة فالأكسس له لغته والأوراكل له لغة خاصة تدعى PLSQL ....
ما الذي يمكنني فعله في الـ SQL ؟
بفضل SQL يمكنك عمل الكثير
1\ إنشاء جدول بالمواصفات التي تحتاجها
2\ اضافة حقول او حذف حقول بعد انشاء الجدول
3\ تفريغ الجدول
4\ حذف الجدول
5\ ادخال المعلومات
6\ تحرير المعلومات
7\ حذف المعلومات
8\ إنشاء قاعدة بيانات
9\ حذف قاعدة بيانات
10\ استخراج المعلومات
11\ استخدام الشروط في استخراج المعلومات (تصاعدي , تنازلي , 10 معلومات , معلومات عن مستخدم معين إلخ ...)
أين يمكنني كتابة أوامر?
سأعطي مثال بالأكسس وبالصور
الكلمه SQL هي اختصار Structured Query Language و معناها (لغة الاستعلام البنيويه) , تستخدم هذه اللغه في التعامل مع قواعد البيانات و لاستخراج و تحديث و اضافة البيانات من قاعدة البيانات و غالبا ما يتم استخدام هذا النوع من قواعد البيانات في المواقع التي تستخدم التقنيات الشهيره مثل الـ PHP , أو في تطبيقات الحاسوب التي تحتاج لقواعد بيانات , و كما نرى ان اغلب برامج الويب تعتمد على الــ SQL من خلال البرنامج الشهير MySQL , وماقد يخفي عليك أن تعلمك ل SQL يغنيك عن معرفة و access و Mysql و oracle و sql server ... كل شيء ستقوم به بواسطة SQL وتجدر الإشارة أن كل هذه البرامج إضافة أنها تدعم SQL فلكل منها لغة خاصة فالأكسس له لغته والأوراكل له لغة خاصة تدعى PLSQL ....
ما الذي يمكنني فعله في الـ SQL ؟
بفضل SQL يمكنك عمل الكثير
1\ إنشاء جدول بالمواصفات التي تحتاجها
2\ اضافة حقول او حذف حقول بعد انشاء الجدول
3\ تفريغ الجدول
4\ حذف الجدول
5\ ادخال المعلومات
6\ تحرير المعلومات
7\ حذف المعلومات
8\ إنشاء قاعدة بيانات
9\ حذف قاعدة بيانات
10\ استخراج المعلومات
11\ استخدام الشروط في استخراج المعلومات (تصاعدي , تنازلي , 10 معلومات , معلومات عن مستخدم معين إلخ ...)
أين يمكنني كتابة أوامر?
سأعطي مثال بالأكسس وبالصور
إنشاء قاعدة بيانات جديده :
قاعدة البيانات هي عصب لغة الــ SQL و من خلالها يتم إنشاء الجداول و تعبئة المعلومات سوف نتعلم كيف نقوم بإنشاء قاعدة بيانات جديده
طريقة كتابة الامر :
CREATE DATEBASE mydbname;
سوف نقرأ هذا الامر باللغه العربيه , كأنك تقول (أنشئ قاعدة البيانات التي اسمها mydbname) .
طبعاً mydbname يمكنك تغيره إلى اسم قاعدة البيانات التي تريده مثلاً تود اسم القاعده brahim او db مثلاً , أي اي اسم تريده
لكن لن يفيدنا هذا الامر في الاكسس لأن في الأكسس سوف تنشيء أنت القاعدة بالمقابل في البرامج الأخرى سيكون هذا الأمر ذا أهمية
لحذف قاعدة البيانات نستعمل الكود الآتي :
DROP DATABASE mydbname;
لإضافة جدول للقاعدة
CREATE TABLE tablname (
Falid1 type null or not null ,
Falid2 type null or not null ,
);
حسناً , لنبدأ الشرح خطوه بخطوه , في اول السطر نقول بإننا نود إنشاء الجدول tablname طبعاً يمكننا تغيير هذه الكلمه إلى اسم الجدول الذي نود اضافته ,
Falid1 , Falid2 : هذان الاثنان يعنيان انهم اسماء للحقول و ها نحن نود اضافة حقلان الاول بمسمى Falid1 و الثاني Falid2 بعدها نبدأ بوصف مميزات هذا الحقل و نوع البيانات و سيتم شرح نوع البيانات في السطور القادمه .
Type : انواع البيانات او الحقول و سيتم شرحها قريبا بإذن الله
Null or not null : هذا يعني انه هل تريد ان يكون الحقل خالي ؟ مثلا هل تريد ان اسم المستخدم هل يجب ان يكتبه المستخدم ام اختياري .
حسناً , بعدما رأينا كيف نقوم بإنشاء جدول و تعرفنا ان هنالك انواع للحقول او البيانات , حسناً تمعّن في الجدول التالي الذي سوف يشرح انواع الحقول :
جدول لانواع الارقام الصحيحه
جدول انواع بيانات التاريخ و الوقت
الانواع TEXT و BLOB
انواع السلاسل الاعتياديه
قاعدة البيانات هي عصب لغة الــ SQL و من خلالها يتم إنشاء الجداول و تعبئة المعلومات سوف نتعلم كيف نقوم بإنشاء قاعدة بيانات جديده
طريقة كتابة الامر :
CREATE DATEBASE mydbname;
سوف نقرأ هذا الامر باللغه العربيه , كأنك تقول (أنشئ قاعدة البيانات التي اسمها mydbname) .
طبعاً mydbname يمكنك تغيره إلى اسم قاعدة البيانات التي تريده مثلاً تود اسم القاعده brahim او db مثلاً , أي اي اسم تريده
لكن لن يفيدنا هذا الامر في الاكسس لأن في الأكسس سوف تنشيء أنت القاعدة بالمقابل في البرامج الأخرى سيكون هذا الأمر ذا أهمية
لحذف قاعدة البيانات نستعمل الكود الآتي :
DROP DATABASE mydbname;
لإضافة جدول للقاعدة
CREATE TABLE tablname (
Falid1 type null or not null ,
Falid2 type null or not null ,
);
حسناً , لنبدأ الشرح خطوه بخطوه , في اول السطر نقول بإننا نود إنشاء الجدول tablname طبعاً يمكننا تغيير هذه الكلمه إلى اسم الجدول الذي نود اضافته ,
Falid1 , Falid2 : هذان الاثنان يعنيان انهم اسماء للحقول و ها نحن نود اضافة حقلان الاول بمسمى Falid1 و الثاني Falid2 بعدها نبدأ بوصف مميزات هذا الحقل و نوع البيانات و سيتم شرح نوع البيانات في السطور القادمه .
Type : انواع البيانات او الحقول و سيتم شرحها قريبا بإذن الله
Null or not null : هذا يعني انه هل تريد ان يكون الحقل خالي ؟ مثلا هل تريد ان اسم المستخدم هل يجب ان يكتبه المستخدم ام اختياري .
حسناً , بعدما رأينا كيف نقوم بإنشاء جدول و تعرفنا ان هنالك انواع للحقول او البيانات , حسناً تمعّن في الجدول التالي الذي سوف يشرح انواع الحقول :
[center]النوع
نوعية البيانات التي يمكن تخزينها
TINYINT()
ارقام صحيحه صغيره جداً
SMALLINT()
ارقام صحيحه صغيره
MEDIUMINT()
ارقام صحيحه متوسطة الحجم
INT()
ارقام صحيحه اعتياديه
INTEGER()
مرادف لــ INT
BIGINT()
ارقام صحيحه كبيره جداً
نوعية البيانات التي يمكن تخزينها
TINYINT()
ارقام صحيحه صغيره جداً
SMALLINT()
ارقام صحيحه صغيره
MEDIUMINT()
ارقام صحيحه متوسطة الحجم
INT()
ارقام صحيحه اعتياديه
INTEGER()
مرادف لــ INT
BIGINT()
ارقام صحيحه كبيره جداً
جدول لانواع الارقام الصحيحه
النوع
نوع البيانات التي يمكن تخزينها
DATE
تاريخ ,, سيظهر كـ YYYY-MM-DD
TIME
وقت ,, سيظهر HH:MM:SS
DATETIME
تاريخ ووقت ,, سيظهر كـ
YYY-MM-DDHH:MM:SS
TIMESTAMP()
ختم زمني
YEAR()
سنه
نوع البيانات التي يمكن تخزينها
DATE
تاريخ ,, سيظهر كـ YYYY-MM-DD
TIME
وقت ,, سيظهر HH:MM:SS
DATETIME
تاريخ ووقت ,, سيظهر كـ
YYY-MM-DDHH:MM:SS
TIMESTAMP()
ختم زمني
YEAR()
سنه
جدول انواع بيانات التاريخ و الوقت
النوع
الوصف
TINYBLOB
حقل كائن BLOB صغير جدا
TINYTEXT
حقل TEXT صغير جدا
BLOB
حقل BLOB حجمه عادي
TEXT
حقل TEXT حجمه عادي
MEDIUMBLOB
حقل BLOB متوسط الحجم
MEDIUMTEXT
حقل TEXT متوسط الحجم
LONGBLOB
حقل BLOB طويل
LONGTEXT
حقل TEXT طويل
الوصف
TINYBLOB
حقل كائن BLOB صغير جدا
TINYTEXT
حقل TEXT صغير جدا
BLOB
حقل BLOB حجمه عادي
TEXT
حقل TEXT حجمه عادي
MEDIUMBLOB
حقل BLOB متوسط الحجم
MEDIUMTEXT
حقل TEXT متوسط الحجم
LONGBLOB
حقل BLOB طويل
LONGTEXT
حقل TEXT طويل
الانواع TEXT و BLOB
النوع
الوصف
CHAR
حقل يقوم بتخزين 1 إلى 255 حرف
VARCHAR
نفس عمل السابق
الوصف
CHAR
حقل يقوم بتخزين 1 إلى 255 حرف
VARCHAR
نفس عمل السابق
انواع السلاسل الاعتياديه
حسنا لنفرض اننا بحاجه إلى 4 حقول , و سنعدد ماهي :
الحقل الاول : وسوف يكون المعرف الخاص لكل زبون , حيث يكون رقم خاص للزبون يميزه عن غيره من الزبائن (ضروري) .
الحقل الثاني : اسم الزبون
الحقل الثالث : رقم هاتف الزبون
الحقل الرابع : عنوان موقع الزبون
حسناً الآن و بعد تحديد الحقول ووظائفها يجب علينا ان نحدد نوعها .
الحقل الاول : بما انه حقل يحمل رقم خاص لكل زبون اذاً سوف نرجع إلى جدول انواع الارقام , سوف نختار النوع INT() بحيث يكون رقم اعتيادي صحيح
حسناً , الآن لدينا مشكله ؟!.. نفرض اردنا اضافة زبون طبعا الزبون الاول سوف يكون رقمه 1 حسناً , نريد اضافة زبون ثاني و سوف نكتب في الحقل الاول رقم 2 , لكن ماذا لو وصلوا عدد زبنائنا مليون زبون !! هل سوف نكتب في الحقل الاولى مليون مليون وواحد مليون و اثنين !! طبعاً لا يمكننا ذلك بل سوف نهرب من هذه اللغه و من قواعد البيانات .
قد تتسائل ماهو حل هذه المشكله الكبيره التي قد تعرقلنا , قد يقول البعض لا نحتاج الحقول الاولى ولا نريد ترقيم هذا الزبون .
ولكنني ارد عليهم و اقول بل يمكننا ترقيمه و بسهوله بالغه و من دون اي تعب او شقاء الحمدلله هناك خاصيه بإسم auto_increment وهي اوتوماتيكيه حيث كلما قمت بإضافة زبون يكتب رقم آخر زبون + 1 , يعني لا تشقى ولا تتعب اجعل عملية اعطاء الزبون رقم خاص للغة الـSQL .
لنفرض ان الحقل الاول إسمه id اي identify و المقصود رقم المعرف كما ذكرنا مسبقاً سوف يكون نوعه INT اي عدد صحيح و سوف نشغل فيه الخاصيه : auto_increment لكي يكون اوتوماتيكياً .
لنفرض ان الحقل الثاني الذي هو إسم الزبون ويكون اسمه name طبعاً يكون نوعه من varchar اي سلسله .
لنفرض ان الحقل الثالث وهو رقم الهاتف إسمه phone طبعاً يكون نوعه INT اي رقم صحيح
لنفرض ان الحقل الرابع و الاخير و هو عنوان موقعه يكون ال varchar لانه تعتبر سلسله واسمه domin .
نسيت ان اذكر شئ مهم و ان السلسله varchar تخزن ارقام و حروف .
, لنفرض ان اسم الجدول client
سيكون الأمر كالتالي :
CREATE TABLE client (
id INT(9) NOT NULL auto_increment ,
name varchar(200) NOT NULL ,
phone INT(9) NOT NULL ,
domin varchar(150) NOT NULL ,
primary key (id)
);
نفترض اننا قمنا بإضافة المعلومات !! , و نريد حذفها جميعها
سوف نستعمل الأمر التالي :
DELETE FROM tablename;
قد تتسائل هل يمكنني حذف معلومه واحد فقط !
الجواب طبعاً نعم و بإستخدام نفس الامر لكن بإضافة الجمله الشرطيه WHERE
لنفرض أننا نود حذف الزبون الذي يحمل رقم تلفون 00123456
سوف نستعمل الأمر التالي :
DELETE FROM tablename where phone = 00123456;
أوامر أخرى
لحذف جدول المعلومات نهائياً من قاعدة البيانات
DROP TABLE tablename;
لدينا زبون جديد و نريد تسجيل معلوماته في الجدول
INSERT INTO tablename VALUES ('info1','info2');
مثال
INSERT INTO client VALUES ('NULL','brahim','1234567','yahoo.com');
لإضافة حقول معينة فقط
INSERT INTO client(id,name,domin) VALUES ('NULL','brahim','yahoo.com');
حذف المعلومات :
DELETE FROM client WHERE domin='yahoo.com';
تحديث المعلومات :
UPDATE client SET name='ahmed';
نفترض أن الزبون الذي يملك yahoo.com غير تلفونه سنعدله هكذا
UPDATE client SET phone='87654321' WHERE domin='yahoo.com';
إستخراج المعلومات :
SELECT * FROM tablename;
لاستخراج حقل التلفون فقط
SELECT phone FROM client;
استخراج معلومات كل العملاء الذين يحملون الاسم brahim .
SELECT * FROM client WHERE name='brahim';
حسناً , هناك عدة عمليات تتم من خلال جملة WHERE بمعنى انها ليست فقط للقيم المتساويه , بل لعدّة قيّم مثلا غير متساويه او اكبر من او يساوي او غيره و هذا الجدول يوضح كل العمليات التي يمكننا استخدامها في جملة WHERE .
العمليه
وصفها
=
يساوي
<> او !=
لا يساوي
<
اكبر من
>
اصغر من
=<
اكبر من او يساوي
=>
اصغر من او يساوي
LIKE
خاصه لعمليات البحث
وصفها
=
يساوي
<> او !=
لا يساوي
<
اكبر من
>
اصغر من
=<
اكبر من او يساوي
=>
اصغر من او يساوي
LIKE
خاصه لعمليات البحث
nero05- مشرف
-
رسالة sms :
الهويات :
المهن :
الاعلام :
الجنس :
عدد الرسائل : 820
نقاط التميز : 18074
تاريخ التسجيل : 08/07/2009
مواضيع مماثلة
» تعلم الفرنسية بدون معلم
» تعلم اللهجة الفلسطينية من غير معلم...
» كيف تحل مشكلتك في 5 دقائق
» اهديها لكل معلم......................
» دقائق من حياتك
» تعلم اللهجة الفلسطينية من غير معلم...
» كيف تحل مشكلتك في 5 دقائق
» اهديها لكل معلم......................
» دقائق من حياتك
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
الخميس يناير 26, 2023 4:51 pm من طرف guerna noureddine
» حضارات ماقبل التاريخ
الخميس نوفمبر 16, 2017 5:36 pm من طرف بن عامر لخضر
» واد سوف على مر الزمان ثاني اكبر معلم تاريخي فالجزائر
الخميس نوفمبر 16, 2017 5:34 pm من طرف بن عامر لخضر
» من أقطابنا لبرج الغدير : زاوية سيدي احسن بلدية غيلاسة دائرة برج الغدير
الثلاثاء نوفمبر 14, 2017 6:38 pm من طرف بن عامر لخضر
» انتشار الامازيغ
الأحد أكتوبر 22, 2017 6:40 am من طرف بن عامر لخضر
» من اقطابنا لبرج الغدير: رحلة في ذكرى 8ماي1945( بئر ميشوبأولاد سي احمد )
السبت أكتوبر 21, 2017 5:56 pm من طرف بن عامر لخضر
» برج الغدير : منارة علم بقرية الدشرة ( مسجد الحاج الشريف )
الأحد أكتوبر 08, 2017 1:09 pm من طرف بن عامر لخضر
» برج الغدير : منارة علم بقرية الدشرة ( مسجد الحاج الشريف )
الأحد أكتوبر 08, 2017 12:57 pm من طرف بن عامر لخضر
» برج الغدير : معلم أثري يكاد يندثر ( الضريح الروماني ببرج الشميسة )
الإثنين أكتوبر 02, 2017 6:42 am من طرف بن عامر لخضر
» مجموعة أطروحات دكتوراه دولة في الإقتصاد.
الجمعة مارس 31, 2017 9:25 pm من طرف yacine ha
» بعض من مؤلفات الدكتور محمد الصغير غانم
الثلاثاء مارس 21, 2017 8:42 am من طرف cherifa cherifa
» ربح المال مجانا من الانترنت
السبت فبراير 25, 2017 9:15 am من طرف mounir moon
» موسوعة كتب الطبخ
الجمعة فبراير 24, 2017 4:43 pm من طرف mounir moon
» cours 3eme année vétérinaire
الجمعة فبراير 24, 2017 4:38 pm من طرف mounir moon
» اين انتم
الإثنين فبراير 13, 2017 2:47 pm من طرف guerna noureddine