SQL and PL/SQL
Oracle SQL and PL/SQL | Queries | DML & DDL statements | Functions | Procedures | Triggers and Packages
لغة الإستعلام SQL
5,153 موضوعات في هذا القسم
-
انظر في هذة الجملة Create table EMP as select * From Employees هذة الجملة تقوم بعمل نسخة طبق الاصل من الجدول EMPLOYEES سواء هيكل الجدول بالاضافة الي البيانات التي بداخله والسؤال هو ما هو التعديل الواجب عمله علي هذة الجملة حتي يكون الجدول الجديد مطابق لهيكل الجدول القديم بدون نقل البيانات ؟ الحل بعد يومان (ولكني أعتقد ان اكيد في كتير من الاعضاء عندهم الحل)
-
السلام عليكم و رحمة الله وبركاته إخواني الكرام هل اراد أحد منكم في يوم ما ان يعرف كم سجل لديه في جميع الجداول مرة واحدة بدون تنفيذ الاستعلام عن كل الجداول مرة اخري يمكنكم إذن ان كنتوا تريدوا ذلك استخدام هذا الاسكربت إليكم الكود spool countall.tmp select 'SELECT count(*), '''||table_name||''' from '||table_name||';' from user_tables / spool off set termout on @@countall.tmp شرح بسيط : في هذا الاسكربت يتم استخدام جملة select لانتاج جمل select لكل الجداول و يتم الاحتفاظ بها في ملف tmp ثم تشغيل هذا الملف عن طريق الsql plus لتظهر النتيجة أما اذا كنت لا تريد ان يظهرعدد كل جدول بصورة منفصل…
-
السلام عليكم و رحمة الله و بركاته اخواني الكرم الكثير من مطوري النظم و البرامج تواجههم مشكلة عند استخدام مسلسل للايصالات علي سبيل المثال و يتم الحذف منه فيبقي هناك فراغات او gaps و لمعرفة هذه الgaps يكن استخدام الselect الموجودة بالمرفقات و هي تستخدم جدول all_objects لذلك يرجي مراعاة الصلاحيات و ايضا عدد الارقام الموجودة بالمسلسل الا يتجاوز عدد الصفوف الموجودة بالall_objects في نفس الملف يوجد الجمل الخاصة بانشاء جدول التجربة و عمل populate له بالداتا عذرا لهذا الخطا الغير مقصود تم تعديل الملف بالتوفيق select_to__get__the__missed_serials.txt
-
ازى اطبق هذا الكود فى pl/sql select sum(DESVALUE),ssn from DESEMP group by ssn ; انا لما انفذه فى pl/sql يعطى خطا على group by
-
ازاى اعمل استعلام يقوم بحساب مجموع اجمالى عدد معين من الحقول مرتبط بمفتاح اساسى واحد بمعنى انا مثلا عندى جدول الموظفين و جدول مفردات المرتب الموظف الواحد له مجموعة من المفردات فى جدول مفردات المرتب ازاى اجمع المفردات الخاصة بكل موظف على حدى فى PL/SQL
-
السلام عليكم و رحمة الله و بركاته إخواني الكرام أحببت ان اتشارك معكم هذا الاسكربتو الذي يقوم بإعطاء معلومات عن المستخدم الحالي مثل إسم المستخد و إسم قاعدة البيانات و إسم الجهاز في شكل جميل و هو منقول من إحدي المواقع إليكم الكود select 'User: '|| user || ' on database ' || global_name, ' (term='||USERENV('TERMINAL')|| ', audsid='||USERENV('SESSIONID')||')' as MYCONTEXT from global_name; و الاسكربت بالمرفقات شرح بسيط : GLOBAL NAME هي عبارة عن VIEW في الDATA DICTIONARY تحتوي علي إسم قاعدة البيانات و في جملة الاستعلان نري انه تم استخدام الUSER FUNCTION للحصول علي إسم المستخدم و ايضا استعمال U…
-
السلام عليكم و رحمة الله وبركاته إخواني الكرام إليكم function للحصول علي عدد السجلات في كل الجداول مرة واحدة اي بصورة مجمعة اليكم الكود CREATE OR REPLACE FUNCTION SCOTT.get_count_all RETURN NUMBER IS CURSOR c1 IS SELECT table_name FROM user_tables; v_sql LONG; v_count NUMBER := 0; v_count_all NUMBER := 0; BEGIN FOR rec IN c1 LOOP v_sql := 'SELECT COUNT(1) FROM ' || rec.table_name; EXECUTE IMMEDIATE v_sql INTO v_count; v_count_all := v_count_all + v_count; END LOOP; RETURN v_count_all; EXCEPTION WHEN OTHERS THEN RETURN -1; END; / شرح للكود : تقوم فكرة عمل هذه الfunction علي استخدام الدنام…
-
السلام عليكم و رحمة الله و بركاته ازاى اعمل استعلام يقوم بحساب مجموع اجمالى عدد معين من الحقول مرتبط بمفتاح اساسى واحد بمعنى انا مثلا عندى جدول الموظفين و جدول مفردات المرتب الموظف الواحد له مجموعة من المفردات فى جدول مفردات المرتب ازاى اجمع المفردات الخاصة بكل موظف على حدى فى PL/SQL
-
السلام عليكم من فضلكم ... أريد تدريب كامل علي إستخدام الـSQL PLUS من أول إنشاء جداول و DATA BAES إلي إنهائها بكل تفاصيلها و ذلك حتي أتدرب بشكل أفضل و أرجوا المتابعة منكم معي في هذا التدريب حتي أتأكد بإذن الله تعالي أنـّـي قد قمت بعمل الـ DATA BASE كاملة مع كل شئ و جزاكم الله خيرا ً و السلام عليكم
-
<div align=\"right\"></div>السلام عليكم ورحمة الله وبركاته أخواني الأفاضل أرفق لكم Function ممتاز يستخدم لإرسال إيميل لأي شخص من خلال قاعدة البيانات SQL وهو مجرب 100% CREATE OR REPLACE function send_mail (sender IN VARCHAR2,recipient IN VARCHAR2,message IN VARCHAR2,mhost IN VARCHAR2) return number IS mailhost VARCHAR2(30) :='10.128.13.97'; mail_conn utl_smtp.connection; BEGIN mail_conn := utl_smtp.open_connection(mailhost, 25); utl_smtp.helo(mail_conn, mailhost); utl_smtp.mail(mail_conn, sender); utl_smtp.rcpt(mail_conn, recipient); utl_smtp.data(mail_conn, message); utl_smtp.quit(mail_conn); return(sqlcode); EXCEPTION WHEN OTHERS THEN return(sqlcode);…
-
للفائدة منقوله من تجربة شخص تحويل الارقام الى حروف Convert a Number to a String CREATE OR REPLACE FUNCTION to_words ( m_amount_in IN NUMBER, m_first_para IN VARCHAR2 := 'Dollars', m_second_para IN VARCHAR2 := 'Cents' ) RETURN VARCHAR2 AS m_amount NUMBER := m_amount_in; word_string VARCHAR2(1000); lower_number NUMBER; lower_str VARCHAR2(50); loop_var NUMBER := 1; /* Function declarartion to convert into string */ FUNCTION to_string (m_val_in NUMBER) RETURN CHAR IS BEGIN IF m_val_in > 0 THEN RETURN (INITCAP (TO_CHAR (TO_DATE (m_val_in, 'SSSSS'), 'SSSSSSP'))); ELSE RETURN (''); END IF; END…
-
السلام عليكم إخواني هذه function لتحويل التاريخ الميلادي الي هجري بالفورمات التي تريدها ملحوظة : اليوم الزائد هو لمعالجة مشكلة انحراف التاريخ الهجري ملحوظة كمان مرة : لا يمكن استدعاء هذه الfunction من جملة select لانها تحتوي علي جملة ddl CREATE OR REPLACE function to_DATE_ARABIC( p_date in date, p_fmt in varchar2 ) return varchar2 as l_return_string varchar2(255); v_cal varchar2(255):='arabic hijrah'; begin execute immediate 'alter session set nls_calendar = '''||V_cal||''''; l_return_string := to_char( p_date+1, p_fmt ); execute immediate 'alter session set nls_calendar = ''Gregorian'''; l_return_string:=replace(l_return…
-
السلام عليكم اليكم function بعكس حروف اي كلمة و هي مأخوذة من رد للعضو egyhamada من احد ردوده الملف بالمرفقات و اليكم رابط السؤال الاصلي http://www.araboug.org/ib/index.php?showto...5&hl=فانكشن مع الشكر مرة اخري للعضو egyhamada بالتوفيق FN_REVERSE.zip
-
السلام عليكم و رحمة الله و بركاته إخواني الكرام هذه function فانكشن تقوم بازالة الرموز و احب ان اتوجه بالشكر للأخ moody_4u علي مجهوده حيث انه من قام بارشادي لذا الموقع و الذي به مجموعة جيدة جدا من الFunctions سأقوم بنقلها اليكم ان شاء الله في مكتبة الاكواد في المنتدي و هذا نص الfunction --============================================================================ -- Copywright 2002, joel crainshaw & chet west --============================================================================ -- DESCRIPTION -- simple function to remove "symbols" from a string; -- can specify a length to look at; readds left-to-right -- to cons…
-
السلام عليكم و رحمة الله و بركاته إخواني الكلام مرة أخري ميعادنا هذه المرة مع function اخري و هي هذه المرة تقوم بعد مرات وجود حرف معين في نص أشكر العضو moody_4u مرة اخري لمجهوده اليكم نص الfunction --=========================================================================== -- Copywright 2002, joel crainshaw & chet west --=========================================================================== -- DESCRIPTION -- super simple function to count incidence of a specific char string --=========================================================================== -- MODIFICATION HISTORY -- Person Date Comments -- --------- -------…
-
Have you heard about Merging Statement in oracle 10g? The Oracle9i database introduced the MERGE statement that allows you to merge rows from one table into another. For example, you might want to merge changes to products listed in one table into the products table. The store schema contains a table named product_changes that was created using the following CREATE TABLE statement in store_schema.sql: CREATE TABLE product_changes ( product_id INTEGER CONSTRAINT prod_changes_pk PRIMARY KEY, product_type_id INTEGER CONSTRAINT prod_changes_fk_product_types REFERENCES product_types(product_type_id), name VARCHAR2(30) NOT NULL, description VARCHAR2(50),…
-
بسم الله الرحمن الرحيم تحياتي للجميع كيفية انشاء جدول فارغ من البيانات من جدول اخر ملي بالبيانات CREATE TABLE EMP1 AS SELECT * FROM EMP WHERE 1 = 2; تم إضافة السكربت في ملف نصي في المرفقات إدارة المنتدى CREATE_EMPTY_TABLE.txt
-
<div align="left"></div>هذا المثال جيد جدا وجدته من خلال البحث عن طريقة عمل ريست لل رو نم واردت ان يستفاد منه الجميع Reset ROWNUM and Suppress Repeating Groups This tip comes from Satyanarayana Josyula, Sr. Oracle DBA at Nexus Energy Software, in Reston, Virginia. Note: This tip was written for use with Oracle9i. You can reset the serial numbers after each group break using a single query--without using any utilities. This technique uses the ROWNUM returned by Oracle and resets the serial number at the beginning of each group. Also this query shows how to suppress the repeating group values in the result set. Let us look at this simple example: Table…
-
السلام عليكم هذه السيليكيت لاظهار كل سنة و اذا كانت leap year (سنة كبيسة ) ام لا احببت ان اتشاركها معكم و تم التعديل في السكريبت بحيث لا يحتاج الاي انشاء جدول جديد بالتوفيق leapyear.txt
-
الاخوة الاعضاء جميعا ارجوا مساعدتي في ايجاد حل لهذا الخطأ ORA-21000 error number argument to raise_application_error of stringstring is out of range Cause: An attempt was made to specify a number not in the allowed range. Action: Use an error number in the range of -20000 to -20999, inclusive. شو اعمل لحلها علما بان الارقام التي تدخل هي ضمن المدى المسموح به والنظام يعمل في مكان ولا يعمل عندي شاكرا حسن التعاون
-
لو سمحتم أبغي أعرف كيف أستعيد رقم السري و اليوزر نيم تبع ال SQL لاني نسيت الرقم و عدلتة بامر بس فترة و نسيتة ألحين المشكلة كيف أدخل SQL plus لاني كل ما اجرب ثلاث محاولات و تسكر البرنامج مرة جربت طريقة أنتو كنتو كاتبيها بس ما نفعت علما الاوراكل هو 10 g
-
السلام عليكم ورحمة الله وبركاتة أريد ان اعرف فائدة الأمر savepoint ? ايضا لدي مشكلة اخرى .. لدي 10G ولكن عندما اكتب الأمر COMMIT يقول Commit statement not applicable. All statements are automatically committed. ايضاً عندما اكتب الأمر ROLLBACK يكتب نفس الجمله السابقة ,,فهل المشكلة في اعدادات التنصيب؟ على استطيع حلها؟ جزيتم خيراً
-
External Tableأريد شرح مفصل لهذا الكود الخاص ببناء ال CREATE TABLE oldemp (fname char(25), lname CHAR(25)) ORGANIZATION EXTERNAL (TYPE ORACLE_LOADER DEFAULT DIRECTORY emp_dir ACCESS PARAMETERS (RECORDS DELIMITED BY NEWLINE NOBADFILE NOLOGFILE FIELDS TERMINATED BY ',' (fname POSITION ( 1:20) CHAR, lname POSITION (22:41) CHAR)) LOCATION ('emp.dat')) PARALLEL 5 REJECT LIMIT 200; وشكراً
-
السلام عليكم لماذا يفضل جعل المفتاح المصدري (الاب) PARENT KEY هو المفتاح الاساسي PRIMARY KEY؟ شكرا
-
عندي جدولين اريد ان استعلم عليهم لاكن في الجدول الاخر( توجد اعمده مشابه في الجدول الاول(A) كيف استثنيهم عشان مايصير تكرار في عرض البيانات SELECT * FROM A,B;