Execute Non Query Activity - Oracle DB Insert Error

Hello UiPath Community,

I have been trying to use the Execute Non Query activity to Insert a value in to an Oracle DB. When passing a Select query, I get data back from the DB without any issues. However, in doing the Insert, I am getting the following error: “ORA-01013: user requested cancel of current operation”. I have tried to increase the timeout and I have double checked the query itself, but no luck in debugging.

Does anyone know how to resolve this issue? Any help or guidance would be greatly appreciated.

Hello @hoyoung.jung , Welcome to the forums!

This is usually the result of a timeout or a Ctrl+C (cancel) being triggered in some way.

It is possible you may be having a timeout error given that your Select query is working. If there is a way to set the timeout to -1 (no timeout) when you submit the SQL, it may help answer that.

Do you have access to repeat this test via a SQL client (such as the Native Orcacle Editor or the DBeaver SQL Editor) by directly inserting into the target database?

thanks

Hello AndyMenon!

Appreciate the help! I have just tried changing the timeout to -1 and I got an error: “The value provided for TimeoutMS must be >= 0 Parameter name: TimeoutMS”

And yes, I used Oracle SQL Developer to insert directly into the database and the same query worked just fine.

Do you happen to have any other suggestions or am I doing something wrong?

Thank you!

Ok, the fact that -1 is not accepted means you can put in a highly exaggerated value just for testing. Maybe 120000 ms (two minutes) may be helpful to see if your insert operation works.

Given that it works from OSD, it means that there are differences in driver settings. Maybe you must check to see what kind of driver you are using and see how well it works with your version of Oracle.

thanks

So the 120000ms also didn’t seem to work in my case. I am trying to test out the ODBC compatibility issue you raised so I can let you know. But I am finding it odd that the “Select” Query is working just fine, but the “Insert”, “Update”, and “Delete” queries are running in to the same issue. Let me know if you have any other ideas as well, but I will track down the compatibility items in the meantime.

Thank you

Well Select is the simplest form of SQL. You don’t have to most often submit anything to modify the contents of a database table when running a select query.

The I/U/D queries however modify data in the database. They may require that you follow other considerations that may include:

  • Proper datatype - especially numeric types
  • Fully qualified name of the table instead of simply putting in just the table name
  • Not to forget if the SQL conformance required by the database is also supported by the driver (example ODBC SQL-99 syntax & ODBC API conformance)

Fully Understood! As for the proper datatype and fully qualified names, I am essentially only working with inserting string values and the names are exactly as they are in the DB. And I have tested in the Insert query via the Oracle DB Developer and it worked out just fine.

As for the compatibility, I am working with the following:

  • Oracle 19c Exadata Database
  • ODBC 32 bit
  • Oracle Instant Client 19c
  • I found documentation on the tnsnames.ora file and referenced that to establish a successful connection between UiPath and the database.

Is there anything else I should check? Or something particular I might be missing?

And once again, really appreciate your advice and direction!

What about the 32 vs 64 bit compatibility? Did you look further?

So all my research shows that UiPath only works with ODBC 32-bit as UiPath itself is a 32-bit application.