السلام عليكم .....
اعذروني لتأخري .....
بلبداية سوف تنشأ على الداتا بيس 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