I would like to insert data from one database table into another database table when the user clicks a button. Both databases reside on the same SQL 2008 server. How can the database be specified in the script?
sql = "INSERT INTO database1.table (a,b,c) SELECT (a,b,c) WHERE x FROM database2.table"
system.db.runPrepUpdate(sql)
java.lang.Exception: java.lang.Exception: Error executing system.db.runPrepUpdate(INSERT INTO AX_CarrierTrack.dbo.tblSequence (ORDER_NUMBER) SELECT (ORDER_NUMBER) FROM AX_POI.dbo.POI_HEADER WHERE ORDER_NUMBER = 014002473859, [null], , , false, false)
caused by Exception: Error executing system.db.runPrepUpdate(INSERT INTO AX_CarrierTrack.dbo.tblSequence (ORDER_NUMBER) SELECT (ORDER_NUMBER) FROM AX_POI.dbo.POI_HEADER WHERE ORDER_NUMBER = 014002473859, [null], , , false, false)
caused by GatewayException: Unexpected error for "INSERT INTO AX_CarrierTrack.dbo.tblSequence (ORDER_NUMBER) SELECT (ORDER_NUMBER) FROM AX_POI.dbo.POI_HEADER WHERE ORDER_NUMBER = 014002473859"
caused by NullPointerException
Ignition v7.6.6 (b2014040112)
Java: Sun Microsystems Inc. 1.6.0_31[/code]
You may be calling the system.db.runPrepUpdate function incorrectly.
Try this:
query = """INSERT INTO AX_CarrierTrack.dbo.tblSequence (ORDER_NUMBER)
SELECT ORDER_NUMBER FROM AX_POI.dbo.POI_HEADER WHERE ORDER_NUMBER = ?"""
system.db.runPrepUpdate(query,"014002473859")