ٍٍTHE COURT OF COMPUTING SYSTEMS
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.


The Court Of Computing Systems
 
الرئيسيةالرئيسية  البوابةالبوابة  أحدث الصورأحدث الصور  التسجيلالتسجيل  دخولدخول  
بحـث
 
 

نتائج البحث
 
Rechercher بحث متقدم
دخول
اسم العضو:
كلمة السر:
ادخلني بشكل آلي عند زيارتي مرة اخرى: 
:: لقد نسيت كلمة السر
المتواجدون الآن ؟
ككل هناك 8 عُضو متصل حالياً :: 0 عضو مُسجل, 0 عُضو مُختفي و 8 زائر

لا أحد

أكبر عدد للأعضاء المتواجدين في هذا المنتدى في نفس الوقت كان 271 بتاريخ الثلاثاء أكتوبر 08, 2024 1:27 am
احصائيات
هذا المنتدى يتوفر على 269 عُضو.
آخر عُضو مُسجل هو Lona فمرحباً به.

أعضاؤنا قدموا 224 مساهمة في هذا المنتدى في 164 موضوع
المواضيع الأخيرة
» دائرة مكبر صوت من الميكروفون وحتى السماعة ... كامل التصميم
تعلم البرمجه بلغة اوراكل Sql  Emptyالسبت ديسمبر 13, 2014 11:31 pm من طرف محمدهاشم

» python code to know current file name and path and directory
تعلم البرمجه بلغة اوراكل Sql  Emptyالأحد أغسطس 12, 2012 12:47 pm من طرف 000000000000000

»  assert -statement in python
تعلم البرمجه بلغة اوراكل Sql  Emptyالإثنين يوليو 02, 2012 3:12 am من طرف Admin

» Solving no-interface issue in Wireshark on Ubuntu 11.10
تعلم البرمجه بلغة اوراكل Sql  Emptyالإثنين يوليو 02, 2012 2:36 am من طرف Admin

» python application slide
تعلم البرمجه بلغة اوراكل Sql  Emptyالسبت يونيو 30, 2012 2:56 am من طرف Admin

» Google Developers Day US - Python Design Patterns
تعلم البرمجه بلغة اوراكل Sql  Emptyالأربعاء يونيو 06, 2012 7:49 pm من طرف 000000000000000

» Google Developers Day US - Python Design Patterns
تعلم البرمجه بلغة اوراكل Sql  Emptyالأربعاء يونيو 06, 2012 7:19 pm من طرف 000000000000000

» شرح بالعربي ومبسط Acess Control List
تعلم البرمجه بلغة اوراكل Sql  Emptyالإثنين أبريل 16, 2012 5:59 am من طرف 000000000000000

» Cisco Packet Tracer on ubuntu
تعلم البرمجه بلغة اوراكل Sql  Emptyالأربعاء مارس 14, 2012 2:06 pm من طرف Admin

تصويت

 

 تعلم البرمجه بلغة اوراكل Sql

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




ذكر عدد المساهمات : 224
نقاط : 10793
تاريخ الميلاد : 04/01/1988
العمر : 36
الموقع : الخليل - نابلس
العمل/الترفيه : برمجة الويب وطالب في هندسة الكمبيوتر
المزاج : ممتاز

تعلم البرمجه بلغة اوراكل Sql  Empty
مُساهمةموضوع: تعلم البرمجه بلغة اوراكل Sql    تعلم البرمجه بلغة اوراكل Sql  Emptyالخميس ديسمبر 23, 2010 6:03 am

تعلم البرمجه بلغة اوراكل Sql
اساسها : الاستعلام ، وهو الاستفسار عن بيانات معينة
لغة SQL :
هي اختصار لـ Structured Query Language



لغه الـSQLتعتمد اعتماد كلي على قواعد البينات
فأذا وجدة قاعدة بينات ..استطعنا العمل في هذه اللغه

ولنعرف قاعدة البينات :
وقاعدة البينات :
مجموعة من البيانات المنظمة داخل جداول بحيث نستطيع الوصول اليها
عن طريق الاستعلام.

نستخدم الـSQL في :
- انشاء جداول عن طريق لغه تسمى الـDDL
- كما نستطيع ادخال وحذف وتعديل البيانات الخاصه بالجداول عن طريق لغة الـDMT
- واخيراً للحصول على المعلومات من الجداول الموجوده لدينا بسهوله ويسر.

ولان لنبدأ في لغة الـ SQL

نذهب لقائمه ابداء ومنها نختار لغة الـSQL
START-----> SQL PLUS

الصيغه العامه لها :

select coulumns name1,coulumns name2,coulumns name3
from table name;l


ولنشرح هذه الصيغه:
1- امر ((select)) هو امر من اوامر لغة الـSQL ويعني التحديد للاعمدة التي اريد عرض صفوفها
2- بعد امر ((select)) نكتب اسماء اعندة الجدول ونفصل بينهم بأستخدام الفاصله العاديه
3- امر ((from)) نستخدمه لمعرفة اسم الجدول الذي نريد عرض صفوفه، ونكتب بعد الـfrom اسم الجدول
مثال عليه :
from salory---------> في حاله اذا كان اسم الجدول الاسعار



ومن الملاحظات الواجب التركيز عليها :
1- (( from, select,Distinct)) نكتبها بالحروف الصغيره او الكبيره (عادي مافيه اشكال )
وهي مهمه في الاستعلام لانها تعتبر الكلمات المفتاحية له (( Key word))
2- لابد من مرعاة الاخطاء الاملائيه باللغة الانجليزيه..
3- لابد من ختم الاستعلام بفاصله " منقوطة" (( ; ))
4- اذا اردنا عرض جميع اعندة الجدول نضع علامة ((*)) بعد امر ((select)) ولا نكتب اسم اي عمود بعدها اطلاقاً
5- في حالة اردنا عرض البيانات بدون تكرار نكتب امر يسمى (( Distinct)) بعد أمر ((select))
وقبل كتابة اسماء الاعمدة

وللتوضيح اكثر دعونا نمثلها في الصيغه العامه السابقه..سوف تكون كالتالي :


select Distinct coulumns name1,coulumns name2,coulumns name3....
from table name;



لناخذ مثال :اكتب جمله SQL لعرض بينات جدول الموظفين؟

الحل :

select *l
from emp;l

توضيح الحل :
وضعنا (( *)) في الحل لانه طلب عرض البينات كامله ولم يقتصر على شي محدد
((emp)) هنا نقصد فيها اسم الجدول المراد عرض بياناته.


مثال (( 2)) :
اكتب جملة SQL لعرض بيانات ارقام الموظفين واسمائهم ووظائفهم من جدول الموظفين ؟

الحل :

select empno, ename, job
from emp;l


توضيح الحل :empno------> المقصود به رقم الموظف
ename------> المقصود به اسم الموظف
job -------> المقصود به نوع الوظيفه

ولانه حدد اسماء الاعمده ولم يذكر البينات بشكل عام
نبداء بطبع المطلوب من الاعمدة مع مرعاة وضع الفاصله " العاديه " بين كل عمود واخر .. وترك العمود الاخير بدون فاصله
كما هو موضح اعلاه
اما بالنسبه للـ ((emp)) فأوضحناها سابقاً وهي : اسم الجدول المراد عرض المطلوب منه.


مثال ((3)) :
اكتب جملة SQL لعرض بيانات جدول الاقسام؟

الحل :
هنا لنحدد المطلوب
1- لعرض بيانات --------> طلب البينات كامله (( يعني نضع SELECT *l))
2- جدول الاقسام--------> حدد لنا نوع الجدول وهو الاقسام ولنرمز له بالرمز Dept
اذا الحل هو :

SELECt *l
from Dept;l



دعونا الان ننتقل الى نقطه اخرى من نقاط هذه اللغة
ولنأخذ (( تغير اسماء الاعمدة في جملة الـ SQL))

يمكننا تغير اسماء الاعمدة بأستخدام بغة الـSQL وتظهر الأسماء الجديدة على الشاشه لطباعتها
ولكن لنعلم ان الاسماء الاصليه لا تتغير في ملف الجدول

يوجد ثلاث طرق لتغير الاسماء او عناوين الاعمدة بلغة الـSQL

الطريقه الاولى :بعد أمر (( SELECT)) يكتب الاسم القديم ثم كلمة ((AS)) ثم الاسم الجديد
لنوضح ذلك بالصيغه:

SELECT اسم العمود القديم AS الاسم الجديد
FROM اسم الجدول ;


الطريقه الثانيه :
بعد امر SELECT يكتب الاسم القديم ثم تترك مسافه واحدة ثم يكتب الاسم الجديد
لنمثلها بالصيغه :

SELECT اسم العمود القديم الاسم الجديد
FROMاسم الجدول ;


الطريقه الثالثه:
نستخدمها في حالة كون الاسم الجديد يحتوي على اكثر من كلمة واحدة.. او يحتوي على مسافات فارغه بين الكلمات
هنا نكتب بعد امر SELECT الاسم القديم ثم نكتب الاسم الجديد ونضعه بين علامتي تنصيص --------> " الاسم الجديد "
ولنوضحة بالصيغه :

SELECT اسم العمود القديم " الاسم الجديد "
FROM اسم الجدول ;


ولنأخذ امثله للتوضيح :

الطريقه الاولى :
اكتبي جمله SQL لعرض بيانات اسماء الموظفين وارقامهم ورواتبهم مع تغير اسم عمود الارقام الى (( number))؟
الحل :

select ename, empno As number,sal
from emp;


لشرح المثال السابق :
ename-------> عمود الاسماء
empno--------> عمود الارقام ( القديم )
number-------> عمود الارقام الجديد
sal-------> عمود الرواتب
empno As number-----> هنا عملنا تغيير لاسم العمود من empnoالى number بأتباع الطريقه الاولى .


مثال ( للطريقه الثانيه ) :اكتب جملة SQL لعرض بينات اسماء الموظفين،ووظائفهم مع تغير عمود الوظيفه الى empjob؟

الحل :

select ename, job empjob
from emp;l


للتوضيح اكثر
job empjob
وضعنا فراغ بين كلمة job وكلمه empjob

مثال ( للطريقه الثالثه ) :

اكتبي جملة الـSQL لعرض بيانات اسماء الموظفين ورواتبهم مع تغير اسم عمود الاسماء الى employee name؟

الحل :

select ename "employee nam",sal
from emp;l


للتوضيح :
اسخدما الطريقه الثالثه تحديدا لان تغيرنا كان مصاحب له كلمتين


التعابير الرياضيه في لغة الـSQL
( الجمع((+))، الطرح((-)) ، الضرب((*))، القسمه(( /)) )

لنوضحها بمثال :
ماهو ناتج الجملة التاليه :

select emp, ename,job,14*sal+10
from emp;l


الحل :
الناتج هنا يعرض عامود ارقام الموظفين، عمود اسماء الموظفين ، عمود الوظائف،
عمود اخر عبارة وهي عمليه حسابيه
لحساب حاصل ضرب الرواتب *14 ثم إضافة 10 الى الناتج النهائي

للعمليات الحسابيه أولويات كما يلي :

اولا: مابداخل الاقواس
ثانيا: الضرب والقسمه
ثالثا: الجمع والطرح

للمعلوميه:
العمليات التي تجري على البيانات في جملة الـSQL تظهر على الشاشه فقط لطباعتها
ولكن البيانات الاصلية في الجدول لا تتغير بعد تنفيذ العمليات عليه

مثال على ذلك :
ماهي نتيجة تنفيذ الجملة التاليه؟

select ename,jop ,10(sal-100)l
from emp;l


الحل :
نعرض عمود الاسماء و عمود الوظائف
وعمود العمليه الحسابيه وهو ( الراتب ناقص 100 وبعدها مضروب في العشره )

مثال اخر :

اكتبي جملة الـSQL لعرض اسماء الموظفين وعرض حاصل ضرب كل راتب بـ10

الحل :

Select ename, sal*10
from emp;1



معامل الضم :

هنا وبعد هذه الخاصيه يمكننا عرض بيانات اكثر من عمود داخل عمود واحد
مثالا: يمككنا عرض ارقام الموظفين واسمائهم في عمود واحد
ومعامل الضم هو عبارة عن (//)
الصيغه العامه له :

select اسم العمود الاول //اسم العمود الثاني
from table name;l


مثال :
اكتب جملة الـSQL لعرض بيانات اسماء الموظفين ووظائفهم في عمود واحد- واعطاء اسم جديد لهذا العمود وهو ( employee)
من جدول الموظفين ؟

الحل :
المطلوب :
1- ضم عمود الاسماء وعمود الوظائف
2- تغير اسم العمود الى اسم جديد
اذا ...

select ename //job As employee
from emp;l


استخدام حروف نصيه مع معامل الضم :
يمكننا هنا في هذه الخاصيه كتابة اي كلمة بين بيانات الاعمدة في معامل الضم
ولكن يجب وضعها بين حاصرتين علويتين ' ــ '

لنوضحها بأخذ مثال بسيط :
اكتب استعلام بإستخدام الـSQL لعرض اسماء الموظفين والوظائف في عمود واحد ويفصل بينهما كلمة (is)

الحل:
select ename // 'is' //sal


from emp;l


الـWhere

نستخدم هنا معاملات ( الاصغر ، الاكبر ، اصغر من او يساوي ، اكبر من او يساوي، يساوي فقط، لا يساوي )
ولنعلم ان الاشارات السابقه تختلف بلغه الكمبيوتر عنها في مسألنا الرياضيه العاديه

ولتوضيح اكثر :
الاصغر تطبع -----> (( > ))
الاكبر تطبع ----> (( < ))
اصغر من او يساوي ((=>))
اكبر من او يساوي -----> ((=<))
يساوي ----> (( ==))
لا يساوي ----> (( !=)) او (( <>))


هنا يمكننا ان نعرض بيانات محددة من الجدول وليس كل البيانات
وهذة البيانات المحددة التي تعرض يجب ان ينطبق عليها شرط او اكثر دون غيرها

الصيغه العامه للـwher


select coulm name
from tablename
where condition;l


شرح الصيغه :

coulm name-----> اسماء الاعمدة
tablename------> اسم الجدول
condition------> الشروط

ولنلاحظ ان الفاصله المنقوطه اصبحت تكتب عند اختتام الشرط بدلاً من اسم الجدول !!

ولنأخذ امثله على ذلك :

اكتبي جمله الـSQL لعرض اسماء الموظفين وتواريخ تعينهم الذين تواريخ تعينهم تساوي jan-2000-01

الحل :
المطلوب :
اسماء الموظفين ------> ename
تاريخ التعين -------> hiredate

اذا...

select ename,hiredate
from emp
where hiredate = '01-jan-2000';l


معاملات اخرى مقارنه مع لمر الـwhere

1- between.... and------> يستخدم للمقارنه بين قيمتين
2- like----------------->بستخدم للمقارنه بين قيم نصيه

(ولابد من وضع حاصرتين علويتين، نستخدم رمز (%) مع المعامل like
للاستعاضه عن مجموعة حروف غير معلومة
ونستخدم الرمز (-) مع المعامل likeللاستعاضه عن حرف واحد غير معروف)

3- in-------------------> يستخدم ارقام او حروف


امثله متنوعه عليها:

مثال -1-

اكتب بلغة SQL لعرض اسماء ورواتب الموظفين الذين رواتبهم بين الـ13000 و الـ17000؟

الحل :

select ename,sal
from emp
;where sal between 13000 and 17000



مثال -2-اكتب استعلام بغله الـSQL لعرض بيانات الموظفين الذين ثاني حرف من اسمائهم (S)؟

الحل :

select*l
from emp
where ename like '-S%';l


مثال-3-

اكتبي استعلام بلغة SQLلعرض بيانات الموظفين التالي اسمائهم saude وbasem؟

الحل :

select *l
from emp
where ename IN (saud,basem);l





لدمج اكثر من شرط

لابد من توافر مهاملات الدمج (الربط )
و تسمى المعاملات المنطقية.. وهي :
And----> و
Or----> او
Not---> نفي

ولتوضيح اكثر ...لناخذ مثال :
اكتب استعلام بغلة الSQL لعرض اسماء الموظفين الذين ليست راوتبهم بين الـ12000 و الـ21000؟

الحل :


select ename, sal
from emp
where sal not between 12000 and 21000;l


وهكذا مع باقي المعاملات ...


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

في الرد التالي سنأخذ الـ SQL FUNCTIONS( الدوال )
الدوال العدديه
الدوال الحرفيه
دوال التاريخ
الدوال العامة
وإنشاء الجداول ‍!

اتمنى لكم الاستفادة
تحياتي للجميع
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://c-s-c.123.st
 
تعلم البرمجه بلغة اوراكل Sql
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
» كود برنامج الرسام بلغة الجافا
» مجموعة من كودات بلغة الجافا جاهزة للتطبيق
» كود بلغة الجافا لعمل تشفير لنص داخل صورة
» تعلم C# 2008
» كتاب تعلم لغة VHDL

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
ٍٍTHE COURT OF COMPUTING SYSTEMS  :: SOFTWARE :: Software-
انتقل الى: