Skip to content

Query splitting issue for escaped single quotes in Execute Sql Script #243

@oferdan

Description

@oferdan

Hi,

there is issue with splitting of SQL in KW: Execute Sql Script

Robot code:

DatabaseLibrary.Execute Sql Script    ${EXECDIR}\\sample_query.sql

sample_query.sql:

Insert into HS_SDN (ENT_NUM,SDN_NAME,SDN_TYPE,PROGRAM,TITLE,CALL_SIGN,VESS_TYPE,TONNAGE,GRT,VESS_FLAG,VESS_OWNER,REMARKS,ORIGIN,OPERATOR,MOD_DATE,STATUS,OLD_STATUS,MARK,CONFORMS,RAWTEXT,COMMENTS,REFERENCE,ADDINFO1,ADDINFO2,ADDINFO3,ADDINFO4,ADDINFO5,ADDINFO6,ADDINFO7,ADDINFO8,ADDINFO9,ADDINFO10,CATEGORY,SUBCATEGORY,POSITION,AGE,PLACEOFBIRTH,DECEASED,AGEDATE,SSN,DOB,HS_DOB) values (91114250,'''ABD AL-SALAM,''ABD AL-MALIK MUHAMMAD YUSUF ''UTHMAN',null,null,null,null,null,null,null,null,null,null,'DIFFMATCHTYPES','HOTADMIN',to_date('09-APR-20','DD-MON-RR'),'NEW',null,null,null,null,null,'DIFFMATCHTYPES-FACOBATA',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null);

Insert into HS_ADD (PK_COUNTER,ADD_NUM,ENT_NUM,ADDRESS,CITY,COUNTRY,ADD_REMARKS,ORIGIN,OPERATOR,MOD_DATE,STATUS,OLD_STATUS,MARK,CONFORMS,RAWTEXT,REFERENCE,ADD_REFERENCE) values (0,91120729,91114250,null,'DUBAI','UNITED ARAB EMIRATES',null,'DIFFMATCHTYPES','HOTADMIN',to_date('09-APR-20','DD-MON-RR'),'EXISTING',null,null,null,null,'DIFFMATCHTYPES-A A TRADING FZCO','DIFFMATCHTYPES-A A TRADING FZCO-');

Insert into HS_ALLPROGRAMS (PROGRAM,ORIGIN) values ('DIFFMATCHTYPES','DIFFMATCHTYPES');

Insert into HS_ASSOCIATEDSDN (ENT_NUM,PROGRAM) values (91114250,'DIFFMATCHTYPES');

Insert into HSDICTIONARY (ENTRYSEQNO,ENT_NUM,VERSION,SDN_TYPE,NAME,ADDRESS1,CITY,COUNTRY,LASTUPDATE,UPDATEBY,COMMENTS,ADDINFO1,ADDINFO2,ADDINFO3,ORIGIN,ALT_NUM,ADD_NUM,REMARKS,ADDINFO4,ADDINFO5,ADDINFO6,ADDINFO7,ADDINFO8,ADDINFO9,ADDINFO10,TITLE,CATEGORY,SUBCATEGORY) values ((SELECT COALESCE(MAX(ENTRYSEQNO), 0) from HSDICTIONARY) +1,91114250,611,null,'''ABD AL-SALAM,''ABD AL-MALIK MUHAMMAD YUSUF ''UTHMAN',null,null,null,'09-04-2020 19:18:54','HOTADMIN',null,null,null,null,'DIFFMATCHTYPES',0,0,null,null,null,null,null,null,null,null,null,null,null);

Problem:

  • it is not splitting first 2 queries properly - even there is a ; in the end - it is combining them into one single query throwing: ORA-00933: SQL command not properly ended
  • Issue is with insertion where using escaped single quote: '''ABD AL-SALAM,''ABD AL-MALIK MUHAMMAD YUSUF ''UTHMAN'
    • aka leading' + escaped ''ABD AL-SALAM,''ABD AL-MALIK MUHAMMAD YUSUF ''UTHMAN + trailing '
  • Expected inserted string is: 'ABD AL-SALAM,'ABD AL-MALIK MUHAMMAD YUSUF 'UTHMAN

Note:

  • it is working fine in SQL Developer and old DatabaseLibrary version 1.2.4

Image

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions