الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

شرح External Table ربط ملفات اكسل مع الداتابيس

Featured Replies

بتاريخ:

 

السلام عليكم ورحمة الله وبركاتة ,

 

نهنئكم بإقتراب شهر رمضان وبعد ...

 

 

سأشرح بالتفصيل طريقة عمل EXTERNAL TABLE الذي له فوائد كثيرة .... لربط البيانات الخارجية (ملفات اكسل)

بالجداول في قواعد البيانات ومن فوائدة ربط قواعد البيانات في جهاز البصة وايضا ربط الملفات التي

تأتي من الشركات الاخرى التي نحتاجها داخل قاعدة البيانات .

 

اللهم لا علم لنا إلا ما علمتنا إنك أنت العليم الحكيم، اللهم علمنا ما ينفعنا وانفعنا بما علمتنا وزدنا علما،

وأرنا الحق حقاً وارزقنا إتباعه وأرنا الباطل باطلاً وارزقنا اجتنابه، واجعلنا ممن يستمعون القول فيتبعون أحسنه،

وأدخلنا برحمتك في عبادك الصالحين.

 

 

اما بعد .... انا لم اشرح قبل هيك ... لاكني سأحاول توصيل المعلومة بشكل جيد

 

 

ما هو EXTERNAL TABLE هو عبارة عن جدول يقرأ البيانات من ملفات خارجية ومن مكان محدد يتم تحديده في كود الأنشاء .

 

يلزمنا لأنشائه التالي :

الملف الذي سيقرأ منه EXTERNAL TABLE ستجده بالمرفقات .

أنشاء DIRECTORY على الداتا بيس يقرأ منه ال EXTERNAL TABLE.

أنشاء كود EXTERNAL TABLE وسيتم شرحة بالتفصيل .

 

طبعا مع نهاية انشاء EXTERNAL TABLE تستطيع ربط الداتا مع الفورم واستعراض البيانات وتعديلها .

 

 

نكمل الشرح بأذن الله .. والله الموفق .

excel.rar

تم تعديل بواسطة Gaith Rammaha

بتاريخ:

جزاك الله خيراً على الشرح ..وأنا من المتابعين مع حضرتك إن شاء الله 

بتاريخ:

موضوع مهم ومفيد للجميع ..بارك الله فيك..

بتاريخ:
  • كاتب الموضوع

 

السلام عليكم .....

 

اعذروني لتأخري .....

 

بلبداية سوف تنشأ على الداتا بيس DIRECTORY سوف يتم رفع الكود بالمرفقات

 

تذهب الى درايفر D تنشأ فايل اسمه READFILE

 

 

 

 من المهم ان تكون متصل في يوزر sys


sys /as sysdba

CREATE OR REPLACE DIRECTORY

READFILE AS

‘D:\READFILE’;



 تمنح صلاحية القرائة والكتابة الى اليوزر الذي تريد منه استخدامه

 

تذهب الى اليوزر المراد داخله انشاء EXTERNAL TABLE والذي تم اعطائة صلاحية قراءة وكتابة على الفايل READFILE


GRANT READ, WRITE ON DIRECTORY READFILE TO USER;

الى الان اعطينا الداتا بيس مكان تكتب وتقرأ منه على درايفر D  اسمه READFILE  وصلاحيه لليوزر الذي نريد ان يقرأ ويكتب على الفايل.

 

 

نأتي لكود  EXTERNAL TABLE


CREATE TABLE EMP_EXTRNAL

(

EMP_NO NUMBER,

EMP_NAME VARCHAR2(20),

EMP_ENTER VARCHAR2(20),

EMP_EXIT VARCHAR2(20)

)

ORGANIZATION EXTERNAL

(

TYPE ORACLE_LOADER

DEFAULT DIRECTORY READFILE

ACCESS PARAMETERS


(

RECORDS DELIMITED BY NEWLINE

CHARACTERSET AR8MSWIN1256

BADFILE READFILE:'EMPBAD.bad'

LOGFILE READFILE:'EMPLOG.log'

DISCARDFILE READFILE:'EMPDISC.dis'

SKIP 1

FIELDS TERMINATED BY ';'

OPTIONALLY ENCLOSED BY '"' LRTRIM

MISSING FIELD VALUES ARE NULL

(

EMP_NO,

EMP_NAME ,

EMP_ENTER ,

EMP_EXIT

)

)

LOCATION (READFILE:EMP.csv')

)

نكمل الشرح ....

EMP_EXTARNAL.txt

تم تعديل بواسطة Gaith Rammaha

بتاريخ:
  • كاتب الموضوع
CREATE TABLE EMP_EXTRNAL

(

                EMP_NO NUMBER,

                EMP_NAME VARCHAR2(20),

                EMP_ENTER VARCHAR2(20),

                EMP_EXIT VARCHAR2(20)

)

لا يحتاج للشرح انشاء جدول

 

 

............................

ORGANIZATION EXTERNAL

  (

      TYPE ORACLE_LOADER

     DEFAULT DIRECTORY READFILE

     ACCESS PARAMETERS

)

ORGANIZATION EXTERNAL :::: هو عبارة عن استدعاء خارجي ويكون فيه براميتر عبارة عن ...

TYPE : عباره عن النوع الذي تريد ان تستدعيه ويقسم الى   قيسمين

- ORACLE_LADER لقراة ملفات النصوص فقط

- ORACLE_DATAPUMPلأستدعاء ملفات DUMP

 

DEFAULT DIRECTORY : تحديد مكان القرائة والكتابة .

ACCESS PARAMETERS : وهو عن الملف الخارجي الذي نستدعيه (EMP.CSV)وتنسيق الذي بداخله يوجد في الكثير من البراميتيرات سيتم شرح البراميتر المستخدم .

LOCATION: وهو تحديد مكان القرائة والكتابة READFILE  وهو اختياري .


  (

RECORDS DELIMITED BY NEWLINE

       CHARACTERSET AR8MSWIN1256

    BADFILE     READFILE:EMPBAD.bad'

    LOGFILE     READFILE:EMPLOG.log'

    DISCARDFILE READFILE:EMPDISC.dis'

    SKIP 1

    FIELDS TERMINATED BY ';' 

    OPTIONALLY ENCLOSED BY '"' LRTRIM

    MISSING FIELD VALUES ARE NULL

(

   EMP_NO,

  EMP_NAME  ,

  EMP_ENTER ,

  EMP_EXIT       

  )



  ACCESS PARAMETERS

  1. RECORDS DELIMITED BY NEWLINE: تحديد نهاية السطر الاول او الريكورد وهو في هذة الحالة عند سطر جديد .
  2.        CHARACTERSET AR8MSWIN1256 : تحديد اللغة داخل الملف وفي هذه الحالة يقرأ اللغة العربية
  3.     BADFILE     READFILE:’EMPBAD.bad' : يكتب لي ملف BAD  بنفس المسار المحدد يجلب لي الداتا التي يوجد بها اخطاء .
  4.     LOGFILE     READFILE:EMPLOG.log' : يكتب لي ملف LOG  يوجد داخلة المشكلة ولماذا لم يتم قراءة الملف
  5.     DISCARDFILE READFILE:EMPDISC.dis': في حالة تحديد شروط يتم كتابتها داخل الكود على الداتا التي بداخل الاكسل او ملف النص ووجد خطأ يتم كتابة هذا الملف والكود الذي تم انشائه مسبقا لا يحتوي شروط .
  6. SKIP 1 : يتم تجاهل اول صف وهو عبارة عن الهيدرز .
  7. FIELDS TERMINATED BY ';'   : يتم الانتقال الى COLUMN  الثاني عند وجود ;  والتأكد من ذلك تستطيع قرائة CSV  داخل NOTEBAD  ومشاهدة ; .
  8. OPTIONALLY ENCLOSED BY '"' LRTRIM : يتم في هذة الحالة الغاء كل الفراغات من يمين او شمال الكلمة الموجودة داخل كل CELL  وتكون عباره عن ".
  9.   MISSING FIELD VALUES ARE NULL : اي نقص في CELL  داخل اكسل يعتبره NULL . .
  10. يتم اعطائة اسماء COLUMN  بالترتيب حسب EXCEL .

بنسبة الى البراميتر فيوجد براميتر لم يتم شرحها لاكن في هذا الشرح تم تغطية معظمها  .

 

وانتهينا من الشرح ودمتم يخير .......

تم تعديل بواسطة Gaith Rammaha

بتاريخ:

ماشا الله قمة في الإبداع يا مبدع!!

 

جاري تطبيقها بإذن الله 

 

موووفق..

بتاريخ:

جزاك الله خير .. موضوع مهم .. وطريقة شرحك رئعة ..

  • بعد 3 شهور...
بتاريخ:

ممكن اعرف احنا ها نعمل الجدول emp علي مستخدم Hr
ولا بردو علي sys user

  • بعد 2 سنة...
بتاريخ:

 

جزاك الله خيرا .. فعلا موضوع مهم و جاري التنفيذ 

 

  • بعد 2 أسابيع...
بتاريخ:

جزاكم الله خير ولكن كان عندي سؤوال وهو كيف امنع مستخدمي الاكسيل من سحب بيانات من قاعدة بيانات اوراكل

  • بعد 6 شهور...
بتاريخ:

ظهر عندي error 

ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04001: error opening file D:\READFILE/EMPLOG.log
  • بعد 8 شهور...
بتاريخ:

هل يمكن نسخ بيانات من ملف خارجي نوع اكسل الى قاعدة البيانات؟ 

  • بعد 4 شهور...
بتاريخ:

ظهر عندي error 

ORA-29913: error in executing ODCIEXTTABLEOPEN callout
ORA-29400: data cartridge error
KUP-04001: error opening file D:\READFILE/EMPLOG.log
 
بتاريخ:

ارجو المساعدة ولكم جزيل الشكر 

 

بتاريخ:

معترض على مكان الملف 

  • بعد 2 شهور...
بتاريخ:
في ٢١‏/٥‏/٢٠١٦ at 21:18, Ahmad.Hasan said:

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

 

شرح جميل...

 

write  SQL statements to do the following (apply on default profile) 
 limit attempts to guess passwords by locking an account after four failed logon attempts .
change the cost of cpu-per-session to 10 ,connect-time to 5 ,logical-reads-per-session to  2. 
set the composite limit to 2.500.000
password lock time for two hours
allow the user to reuse the old password after 5 password changes.
hint : use 
alter profile profile_name limit

 

ممكن حل لهاد ضروري 

  • بعد 2 شهور...
بتاريخ:

الكود لم يعمل معى

تم تعديل بواسطة mohamed abdo_168594

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

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

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

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

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

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.