الرئيسيةالتسجيلدخول

شاطر | 
 

 تعلم لغة sql في سبع دقائق بدون معلم

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


انثى
عدد الرسائل : 4401
العمر : 27
تاريخ التسجيل : 03/07/2008

مُساهمةموضوع: تعلم لغة sql في سبع دقائق بدون معلم   الأربعاء نوفمبر 11, 2009 6:04 am

تعريف 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 و من خلالها يتم إنشاء الجداول و تعبئة
المعلومات سوف نتعلم كيف نقوم بإنشاء قاعدة بيانات جديده

طريقة كتابة الامر :
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 : هذا يعني انه هل تريد ان يكون الحقل خالي ؟ مثلا هل تريد ان
اسم المستخدم هل يجب ان يكتبه المستخدم ام اختياري .

حسناً
, بعدما رأينا كيف نقوم بإنشاء جدول و تعرفنا ان هنالك انواع للحقول او
البيانات , حسناً تمعّن في الجدول التالي الذي سوف يشرح انواع الحقول :

النوع
نوعية البيانات التي يمكن تخزينها
TINYINT()
ارقام صحيحه صغيره جداً
SMALLINT()
ارقام صحيحه صغيره
MEDIUMINT()
ارقام صحيحه متوسطة الحجم
INT()
ارقام صحيحه اعتياديه
INTEGER()
مرادف لــ INT
BIGINT()
ارقام صحيحه كبيره جداً
جدول لانواع الارقام الصحيحه
النوع
نوع البيانات التي يمكن تخزينها
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 طويل
الانواع TEXT و BLOB
النوع
الوصف
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
خاصه لعمليات البحث

_________________
لا تتعجب إذا رأيتني أضحك يوماً وأبكي
يوماً ... فأنا كالورد ... يومـًا أزين
عرسـًا ... ويوما أزين قبراً.....
----------------------------

من السخيف جداً .. أن تجد أناساً يستغلون طيبتك
ويعتقدون انك ساذج ،، وأنت تعلم بما يفكرون به ،، ومن المضحك انك تجدهم فرحين
ظناً منهم انهم استطاعوا القيام بشيء...
--------------------------
الرجوع الى أعلى الصفحة اذهب الى الأسفل
العقرب العجوز المبرمج
ادارة IT CLUB
ادارة IT CLUB


ذكر
عدد الرسائل : 6053
العمر : 27
تاريخ التسجيل : 19/11/2007

مُساهمةموضوع: رد: تعلم لغة sql في سبع دقائق بدون معلم   الأربعاء نوفمبر 11, 2009 6:17 am

موضوع جامد جدا و مفيد جدا


خصوصا لاى حد معاه 

نظم قواعد البيانات
او 
حاسب الى 3

فى الاكسس



شكرا سمسمه 

موضوع بجد قيم 

_________________


------------ بحبك اد الدنيا دى كلها --------------

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


انثى
عدد الرسائل : 4401
العمر : 27
تاريخ التسجيل : 03/07/2008

مُساهمةموضوع: رد: تعلم لغة sql في سبع دقائق بدون معلم   الأربعاء نوفمبر 11, 2009 6:32 am

يارب الكل يستفاد

شكرا ليك انت ياعقرب على المرور

_________________
لا تتعجب إذا رأيتني أضحك يوماً وأبكي
يوماً ... فأنا كالورد ... يومـًا أزين
عرسـًا ... ويوما أزين قبراً.....
----------------------------

من السخيف جداً .. أن تجد أناساً يستغلون طيبتك
ويعتقدون انك ساذج ،، وأنت تعلم بما يفكرون به ،، ومن المضحك انك تجدهم فرحين
ظناً منهم انهم استطاعوا القيام بشيء...
--------------------------
الرجوع الى أعلى الصفحة اذهب الى الأسفل
زائر الليل
ادارة IT CLUB
ادارة IT CLUB


ذكر
عدد الرسائل : 1022
العمر : 29
تاريخ التسجيل : 20/10/2007

مُساهمةموضوع: رد: تعلم لغة sql في سبع دقائق بدون معلم   الجمعة يناير 01, 2010 8:52 pm

شكرا سمسمه

جزاكى الله خيرا

بجد مجهود متميز

_________________


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



مُساهمةموضوع: رد: تعلم لغة sql في سبع دقائق بدون معلم   السبت يناير 02, 2010 12:27 am

الله عليكي يا سمسمه
جزاكي الله خيرا وبارك فيكي يارب

بجد مجهود رااااااااااااااائع
موضوع ممتاااااااااااااااااااااز

تسلم ايدك يا قمر
===============

بس انا عندي سؤال
انا نزلت اكتر من كتاب لsql
وبيجيب مثال ع الاكسس
بس اكسس 2000
مفيش لاكسس2007 او 2003
الرجوع الى أعلى الصفحة اذهب الى الأسفل
نور
مشرفه عامه
مشرفه عامه


انثى
عدد الرسائل : 5392
العمر : 28
تاريخ التسجيل : 26/10/2007

مُساهمةموضوع: رد: تعلم لغة sql في سبع دقائق بدون معلم   السبت يناير 02, 2010 2:51 am

انا عندى فيدوهات صوت وصورة لاكسس 203 شرح لو عايزة يانبض


وسمسم موضوع جميل
بس على فكرة لغة الصور مش انجليزى دا فرنساوى باين

_________________



امحي زنوبك
من هنا

http://www.shbab1.com/2minutes.htm
الرجوع الى أعلى الصفحة اذهب الى الأسفل
gegeali15
عضو جديد
عضو جديد


انثى
عدد الرسائل : 2
العمر : 40
تاريخ التسجيل : 27/01/2010

مُساهمةموضوع: رد: تعلم لغة sql في سبع دقائق بدون معلم   الأربعاء يناير 27, 2010 6:33 pm

شكرا جزيلا
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
تعلم لغة sql في سبع دقائق بدون معلم
استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

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