# runPrepUpdate Insert Failing and runScalarPrepQuery works fine

**URL:** <https://forum.inductiveautomation.com/t/runprepupdate-insert-failing-and-runscalarprepquery-works-fine/71606>\
**Category:** Ignition\
**Tags:** ignition81\
**Created:** [March 27, 2023, 12:59am UTC](https://forum.inductiveautomation.com/t/runprepupdate-insert-failing-and-runscalarprepquery-works-fine/71606 "2023-03-27T00:59:42Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Lina\_Su](https://avatars.discourse-cdn.com/v4/letter/l/7ba0ec/32.png) [@Lina\_Su](https://forum.inductiveautomation.com/u/Lina_Su)\
**Post date:** [March 27, 2023, 12:59am UTC](https://forum.inductiveautomation.com/t/runprepupdate-insert-failing-and-runscalarprepquery-works-fine/71606/1 "2023-03-27T00:59:42Z")

</div>

I encountered an error when using the runPrepUpdate function to insert a record into my database. To eliminate all other possible issues, I created a table called "myTest" in my MSSQL database with only one column and no restrictions on the data field. When I run the insert script directly in SQL, it works without any issues. However, when I execute the following script in Ignition, I get an error:

```auto
import system
system.db.runPrepUpdate("INSERT INTO myTest (IDSN) VALUES (?)", ['aaaaa'], 'DBConnection')

```

To debug this script, I executed the following query statement, which successfully returns a number. This shows that my database connection is working correctly:

```auto
existing_record = system.db.runScalarPrepQuery("SELECT COUNT(*) FROM myTest WHERE 1=?", [1], 'DBConnection')
print(existing_record)

```

```auto
Here is the detailed error message:
 File "<input>", line 6, in <module>
	at com.inductiveautomation.ignition.common.script.builtin.AbstractDBUtilities.error(AbstractDBUtilities.java:392)

	at com.inductiveautomation.ignition.common.script.builtin.AbstractDBUtilities.runPrepUpdate(AbstractDBUtilities.java:268)

	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.base/java.lang.reflect.Method.invoke(Unknown Source)

java.lang.Exception: java.lang.Exception: Error executing system.db.runPrepUpdate(INSERT INTO myTest (IDSN) VALUES (?), [aaaaa], DBConnection, , false, false)

```

---

<div class="post-metadata">

**Author:** ![Lina\_Su](https://avatars.discourse-cdn.com/v4/letter/l/7ba0ec/32.png) [@Lina\_Su](https://forum.inductiveautomation.com/u/Lina_Su)\
**Post date:** [March 27, 2023, 1:16am UTC](https://forum.inductiveautomation.com/t/runprepupdate-insert-failing-and-runscalarprepquery-works-fine/71606/2 "2023-03-27T01:16:29Z")

</div>

My issue is fixed by changing it to write mode.

![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/b/d/bdaf19a6d95f7b434980803fec1c04cd565edadd.png)
