الانتقال إلى المحتوى

سؤال. ماهو الأوراكل؟ أرجو الإجابة...


قوس قزح

Recommended Posts

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

رابط هذا التعليق
شارك

قد يفهم العديد ان لم يكن الكل في فهم موضوع المشاركة بشكل خاطئ، ولكن الموضوع في بالي من فترة طويلة، وعندما عزمت كتابته، احترت في العنوان.

وأهدف هنا الاشخاص الجدد على مجال الاوراكل، والشريحة المهمة منهم، هي من عمل قبل ذلك في بيئة مختلفة ولدي الالمام بها، اي ان القصد، من دليه معرفة مبرمجية ولكنه لا يعلم الكثير عن الاوراكل ومميزاتها وما انشأت له.

أعزائي، الاوراكل هي كما تعلمون تنقسم لشقين اساسيين، ينقسم كل منهما لأقسام داخليه عديدة، والقسمين الاولين هما، قواعد البيانات، وأدوات البرمجة. ولكن، عندما قامت شركة الاوراكل ببناء هذا البرنامج الضخم، لم كانت تهدف، ومن هم المستهدفين بعمل هذا الانجاز الكبير ؟؟؟؟

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

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

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

أرجو ان تكونوا قد فهمتموني.

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

رابط هذا التعليق
شارك

السابق ملف كان عندى




مقدمة



SQL :

هي لغة من لغات الكمبيوتر تستخدم لتتصل مع نظام إدارة قاعدة البيانات العلائق (RDBMS) .

أسست SQL من قبل (ISO) و(ANSI) .



الاسم الأصل للـ SQL هو Inter National Stander Data Base language SQL وجاء تسميتها عام 1992 ، وظهر إصدار آخر من SQL وهو SQL/92 أو SQL2 ثم جاء آخر إصدار باسم ANSI /ISO SQL أو SQL STANDERD .



أسست SQL لأول مرة عام 1970 م ، وكان اسمها الأول SEQUEL اختصار لـ Structured English Query Language .

استخدمت الـ SEQUEL داخل نظام R ، وهذا النظام موجود داخل شركة IBM (RDBMS) وهو نموج أولي ، ثم اختصروا الكلمة الإنجليزية إلى SQL .



وكانت تسمى شركة أوراكل بـ Relational Software inc ، وهي أخذت SQL واستخدمتها في عام 1979 وهم أول من استخدموها في العالم .



من البرمجيات التي تستخدمها SQL/92 ليست كلها تنطبق عليها الشروط بشكل جيد . وتوجد الآن أكثر من سبع نسخ للـSQL في لأسواق ، لأن كل البرامج التي تستخدم RDBMS يزيد استخدامها عند الناس .



من المميزات الرئيسية للـ SQL أنها لغة معرفة أو لغة غير إجرائية . من نظر المبرمجين ، أن المبرمج لا يحتاج أن يصف تتبع كل العمليات التي يحتاجها الكمبيوتر لكي يخرج النتيجة، بدلا ً من ذلك يشير المبرمج إلى نظام إدارة قاعدة البيانات (RDBMS) الذي يجب أن يكون منجز ، ثم يترك RDBMS لكي يكمله بأي طريقة .



وثبتت التسمية الأخيرة للـ SQL بلغة الاستعلام الهيكلي Structured Query Language .

رابط هذا التعليق
شارك

;) أساليب البرمجة والتعامل مع قواعد البيانات Oracle هو لغة البرمجة ولإستعلامات الهيكلة Structure Query language وقد تناولنا في مقالات سابقة كيفية الإستعلام عن بيانات معينة داخل جدول. وفي هذا المقال نسوق إليك شرح لبعض الوظائف التي تساعدك علي تنفيذ بعض العمليات علي مجموعة سجلات دفعة واحدة فيما يعرف بوظائف المجموعة Group functions.

لغة الإستعلامات الهيكلية فى أوراكل

 

 

 

ووظائف المجموعة Group Functions هي مجموعة وظائف يتم كتابتها داخل جملة الاستعلام لتحقيق نتائج معينة من مجموعة سجلات دفعة واحدة, مثل الحصول علي أعلي قيمة Maximum,أو أقل قيمة Minimum , أو متوسط مجموعة من القيم. Average

 

نفترض أنك تعمل بإحدي الشركات وطلب منك مديرك بيانا بأسماء ومهن ومرتبات الموظفين المسجلين بقاعدة بيانات الشركة وفي الجدول Emp علي وجه التحديد وهو الجدول الخاص بالموظفين وبياناتهم المختلفة , ستقوم أولا بكتابة جملة استعلام تقليدية تسأل فيها عن الرقم والاسم والمرتب والتي تكون كالتالي :

 

Select Empno,Ename,Sal from Emp

 

فتظهر النتيجة كما هو موضح بالشكل رقم 1.

 

 

 

 

 

 

بعد ذلك ستقوم بكتابة جملة الاستعلام التالية للحصول علي أقل مرتب

Select min(Sal) from Emp

 

 

 

 

 

 

 

 

 

 

 

وكذلك للحصول علي أعلي مرتب فتكون جملة الاستعلام :

 

Select Max(Sal) From Emp

 

وبالمثل للحصول علي متوسط المرتبات فتكتب جملة الاستعلام التالية:

 

Select Avg(Sal) From Emp

 

 

 

 

 

 

 

 

 

 

 

أما إذا أردت معرفة إجمالي قيمة المرتبات التي تدفعها شركتك فقم بكتابة جملة الاستعلام التالية والتي تظهر نتيجتها بوضوح في الشكل رقم 2:

 

Select Sum(Sal) From Emp

 

 

 

 

 

 

 

 

وهكذ ستجد أنك قد حصلت علي أقل قيمة Minimum وأعلي قيمة Maximum وكذلك متوسط القيم Average ومجموع قيم معينة Sum بإستخدام ال- Group Functions

ملحوظة :

 

قد يطرأ علي بالك سؤال مهم وهو, هل يمكن الجمع بين هذه الوظائف خلال جملة استعلام واحدة?وهذا ما سيجيب عليه المثال التالي:

 

SELECT MIN(SAL), AVG(SAL) MAX(SAL), SUM(SAL)FROM EMP مع الوضع في الإعتبار أن الوظائف MAX وMIN لا يمكن تطبيقها إلا علي الحقول من النوع الرقمي فقط,, فما بالك لو علمت أن بإمكانك أن تفعل ذلك حتي مع الحقول من النوع النصي أو أي نوع آخر من البيانات ,, وسيتضح لك الأمر جليا عند تطبيق المثال التالي والذي تظهر نتيجته بوضوح كما بالشكل رقم 3

 

 

 

 

 

 

 

 

Count Function

تستخدم هذه الوظيفة لمعرفة عدد السجلات , فمثلا إذا أردت أن تسأل عن عدد سجلات الجدول المسمي Emp فاكتب الجملة التالية والتي تظهر نتيجتها :

 

SELECT COUNT(*) FROM EMP

 

 

 

 

 

 

 

 

 

 

 

 

الاستعلامات الفرعية أو المتداخلة SubQueries:

 

تعتبر الاستعلامات الفرعية من أحد الجمل الهامة التي تلجأ إليها خلال رحلتك مع SQL وخاصة إذا كنت بصدد حل مشكلة مثل التي قابلتك عندما سألك مديرك قائلا من يأخذ مرتبا أكبر من كريم!! علما بأن الثاني أحد الموظفين بهذه الشركة وبياناته مسجلة بالجدول Emp. الآن أنت بصدد أن تطلب من قاعدة البيانات أن تعطيك جميع بيانات الموظفين الذين يزيد راتبهم عن مرتب كريم فهناك حلان:

 

الأول :هو أن تستعلم عن مرتب كريم كما يلي SELECT SAL FROM EMP WHERE ENAME='KAREM'

 

فتظهر النتيجة وبها نتيجة العملية.

 

 

 

 

 

 

 

 

 

 

 

ثم بعد ذلك تستخدم تلك القيمة في جملة جديدة صيغتها:

 

SELECT ENAME FROM EMP WHERE SAL>1200

 

فينتج عن ذلك ما تراه بالشكل رقم 4وهو جميع الموظفين الذين يحصلون علي مرتب أكبر من 1200 جنيه أي أكبر من مرتب كريم .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

الثاني: أن تكتب جملة الاستعلام باستخدام ال- Subquery كما يلي :

SELECT ENAME FROM EMP WHERE SAL>(SELECT SAL FROM EMP WHERE ENAME='KAREM'

 

 

 

 

 

 

 

 

 

 

 

 

 

مما سبق يتضح لنا ماهية ال- Subqueries وعليك أن تعلم أن هناك نقاطا يجب مراعتها عند كتابتك لجملة ال- Subqueries وهي كالآتي:

 

- وضع جملة الاستعلام الخاصة بالاستعلام الفرعي بين أقواس .

 

- وضع جملة الاستعلام الفرعي في الجانب الأيمن من الشاشة.

 

- لا يمكن استخدام ORDER BY في جملة الاستعلام الفرعي.

 

وفي اللقاء القادم سوف نستكمل الرحلة مع الاستعلامات الفرعية والمزيد مع ORACLE SQL*PLUS

 

أخطاء شائعة

 

كما اعتدنا في نهاية كل حلقة أن نلقي الضوء علي بعض الأخطاء الشائعة والتي تصادفنا أثناء العمل مع ORACLE ولكننا اليوم سننوه عن جزئية بسيطة لايمكن اعتبارها خطأ وإنما يمكن فعلها لتسهيل الدخول الي شاشة ال- SQL*PLUS إضافة الي بعضى الأخطاء الأخري كما يلي:

 

- من المتعارف عليه أنه عند دخولك الي شاشة ال- ORACLE SQL*PLUS تكتب اسم الدخول User Name في الخانة المخصصة لذلك ثم كلمة المرور Password في الخانة الخاصة بها , ثم بعد ذلك تتجه لكتابة اسم قاعدة البيانات في خانة Host وذلك إن وجدت , إلا أنك يمكن أن تجمع كل ذلك بخطوة واحدة كما يلي :

 

مثلا أنت تريد الدخول باسم Scott وكلمة المرور الخاصة به هي Tiger فيمكنك أن تكتب الاثنين معا في الخانة User Name علي أن تفصل بينهما ب- / ثم تضغط بعد ذلك Enter أو تنقر Ok

 

 

 

 

 

 

في حالة وجود اسم لقاعدة البيانات التي تتعامل معها فيمكنك أيضا كتابة اسمها بعد كلمة المرور واسم الدخول في مكان واحد كما سبق علي أن تفصل بينهما ب- @ ويظهر ذلك بوضوح كما بالشكل رقم 5.

 

 

 

 

 

 

 

 

 

 

 

رسالة الخطأ ORA-00904

وينتج هذا الخطأ عند كتابة اسم عمود بصورة غير صحيحة أو اسم عمود غير موجود والذي به خطأ في اسم العمود Ename والذي تم كتابته Enam فنتج عنه هذا الخطأ فيجب عليك تصحيحه.

 

 

 

 

 

 

 

 

 

رسالة الخطأ no rows selected

 

هذه الرسالة ليست بخطأ وإنما تنتج من عدم توافر نتائج في الجدول تتفق مع الشرط المطلوب في جملة الاستعلام , أو أن يكون الجدول خاليا من البيانات.

 

أنظر المثال التالي والذي أردنا فيه الاستعلام عن الاسم والمهنة والمرتب والعمولة للموظف الذي يحمل الرقم 545 علما بأنه لا يوجد أي موظف بهذا الرقم فتنتج الرسالة no rows selected

 

 

 

 

 

 

 

 

 

 

SELECT ENAME, JOB, SAL, COMM FROM EMP WHERE EMPNO=545 وفي هذه الحالة يجب أن تتحقق من أن معيار البحث الذي أدخلته سليم أي مطابق لأحد البيانات الموجودة بالجدول أو أن الجدول ليس خاليا من البيانات

 

رسالة الخطأ ORA-00933

 

وينتج هذا الخطأ من كتابة جملة الاستعلام أو أحد كلماتها بصورة غير صحيحة , ففي المثال التالي نريد الاستعلام عن الرقم والمهنة والمرتب للموظف الذي اسمه KAREM فكتبنا الجملة كما يلي وبها كلمة خاطئة وهي WHERE حيث تمت كتابتها WHER فنتج عن ذلك ما تراه بالشكل رقم 6 والذي أفاد بوجود خطأ بالسطر رقم 3.

 

 

 

 

 

 

 

 

 

 

SELECT EMPNO, JOB, SAL

 

FROM EMP

 

WHER ENAME LIKE'KAREM'

 

وإلى اللقاء في مقالات قادمة بإذن الله.

رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية