Closed HarisMohre closed 3 years ago
Found the solution,
I had to convert all the Parameters (apart from the BLOB) to String for some reason. Here is the final Code:
connection.execute("INSERT INTO mol.FACERECOGMAPPINGTABLE (PERSONCODE, SUBJECTID, LOCALPATH,BASE64DATA, SUBJECT) VALUES (:opcode, :osubid, :oimpath, :OB64DATA, :osubname)", //connection.execute('BEGIN INSERTINTOFACERECOGTABLE(:OPCODE, :OSUBID, :OIMPATH , :OB64DATA , :OSUBNAME); END;', { OPCODE: String(oopcode), OSUBID: String(subjectId), OIMPATH: String(FinalImagePath), // ob64data: {val: blobvalue, type: oracledb.BUFFER, dir: oracledb.BIND_IN}, OB64DATA: blobvalue, OSUBNAME: String(oopcode) }
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 Node v14.17.5. OracleDB Ver 5.2.0
Hi,
I cannot seem to INSERT a BLOB (Which is a base64 string) to the Oracle DB. I keep having the error:
ORA-01484: arrays can only be bound to PL/SQL statements
Surprisingly , I have all the Parameters saved as var and not a single array is being passed.
I am including the DB schema below:
Include all SQL needed to create the database schema.
I Have tried everything and I keep getting the error saying arrays can only be bound to PL/SQL statements. It would be nice if you can help me here.
Thanks, Harry