Step by step:
As a privileged user (SYS
), create a directory (Oracle object which points to filesystem directory which contains the input data file). Grant privileges to user which will be reading that file.
SQL> show user
USER is "SYS"
SQL> create or replace directory ext_dir as 'c:\temp';
Directory created.
SQL> grant read, write on directory ext_dir to scott;
Grant succeeded.
Connected as SCOTT
, I'm creating an external table which will select data from the input file. Sample data you posted suggests that its columns are fixed in size. If you meant to say that they are space delimited, well - they most probably aren't, because "Claim Benefit Payout" can't be loaded in that case (unless it is, actually, 3 different columns). As you didn't explain it, I'll consider its columns are fixed in size.
SQL> connect scott/tiger
Connected.
SQL> create table test1
2 (col1 char(35),
3 col2 char(10),
4 col3 char(10),
5 col4 char(20),
6 col5 char(10)
7 )
8 organization external
9 (type oracle_loader
10 default directory ext_dir
11 access parameters
12 (records delimited by newline
13 fields ldrtrim
14 (col1 ( 1:32) char,
15 col2 (34:43) char,
16 col3 (45:53) char,
17 col4 (54:73) char,
18 col5 (75:80) char
19 )
20 )
21 location ('test1.txt')
22 )
23 reject limit unlimited;
Table created.
Does it work?
SQL> select * From test1;
COL1 COL2 COL3 COL4 COL5
----------------------------------- ---------- ---------- -------------------- ----------
00000000000005000.00517081233434 28/02/2021 781750202 Claim Benefit Payout 781344
00000000000002500.00517081233431 28/02/2021 825229202 Claim Benefit Payout 825401
00000000000060000.00517081233433 28/02/2021 452211023 Claim Benefit Payout 452001
00000000000075000.00517081233432 28/02/2021 411002002 Claim Benefit Payout 411015
SQL>