DSD.BCIPut Call to SQLExecute failed

Post questions here relative to DataStage Server Edition for such areas as Server job design, DS Basic, Routines, Job Sequences, etc.

Moderators: chulett, rschirm, roy

Post Reply
skpahuja
Participant
Posts: 1
Joined: Mon Mar 04, 2002 11:37 pm
Location: United Arab Emirates

DSD.BCIPut Call to SQLExecute failed

Post by skpahuja »

DATA STAGE VER 4.2
OS : NT

I am trying to REPLACE EXISTING ROWS COMPLETELY
in to ODBC stage MSSQL From A ODBC stage MSSQL

I have set the UPDATE ACTION AS : REPLACE EXISTING ROWS COMPLETELY

MY SQL SHOWS THIS

DELETE FROM NPP_2."dbo".DELIVERY_ORDERS_SUMMARY WHERE ();
INSERT INTO NPP_2."dbo".DELIVERY_ORDERS_SUMMARY(DO_ORDER_NO, GROUP_CODE, CUST_CODE, CUST_NAME, DEL_DATE, TTL_QTY, GROSS_AMT, NET_AMT, DISC_AMT, INVOICE_NO, FLAG) VALUES (?,?,?,?,?,?,?,?,?,?,?);

MY LOG SHOWS THE FOLLOWING ERROR:


UPDATEINVSUMMARY.CODBCStage2.DSLink4: DSD.BCIOpenW call to SQLPrepare failed.
DELETE FROM NPP_2."dbo".DELIVERY_ORDERS_SUMMARY WHERE ()
SQLSTATE=37000, DBMS.CODE=170
[Ardent][SQL Client][ODBC][Microsoft][ODBC SQL Server Driver][SQL Server]Line 1: Incorrect syntax near ')'.
SQLSTATE=37000, DBMS.CODE=8180
[Ardent][SQL Client][ODBC][Microsoft][ODBC SQL Server Driver][SQL Server]Statement(s) could not be prepared


PLEASE HELP

THANKS AND REGARDS
SKPAHUJA
ogmios
Participant
Posts: 659
Joined: Tue Mar 11, 2003 3:40 pm

Post by ogmios »

This is an easy one. You should specify the key columns of your table in the ODBC stage. If you do this the columns will appear in the WHERE clause of the delete.

Regards,
Ogmios
Belgium
Post Reply