I am running the below script and continue to get the below error. According to research I have conducted online, either table name or one of the column has more than 30 characters name. But I think there should be a go around - any idea?

Error: "Identifier is too long"

My code:
DECLARE
X NUMBER;
BEGIN
SYS.DBMS_JOB.SUBMIT
(
job => X
,what => execute immediate 'create table traffic_test as SELECT* FROM data.tbl_traffic WHERE upper(SUBSTR(controlnumber,-4,4))' = '001"'"W';
delete from data.tbl_traffic;
commit;'
,next_date => to_date('17/12/2008 14:22:02','dd/mm/yyyy hh24:mi:ss')
,interval => 'NEXT_DAY(TRUNC(SYSDATE), ''SUNDAY'')'
,no_parse => FALSE
);
:JobNumber := to_char(X);
END;
/