on 07-27-2011 11:42 AM
Hello experts,
The scenario I am trying to implement is Proxy -- to -- JDBC. Earlier it was assumed that the table has primary key and therefore I started with UPDATE_INSERT structure but later on we came to know that the table does not have any primary key.
Now, I am supposed to insert data into a database table with no primary key. Therefore I am using INSERT structure. The structure on the receiver side is something like this:
<Statement1>
<SKU_TMP action="INSERT">
<table>SKU_TMP</table>
<access>
<SKUCODE></SKUCODE>
<SKULIB1></SKULIB1>
<SKUPUC></SKUPUC>
<SKUNUC></SKUNUC>
<SKUUCLOT></SKUUCLOT>
<SKUNBFAR></SKUNBFAR>
<SKUNCHE></SKUNCHE>
<SKUPBRUT></SKUPBRUT>
<SKUEANU></SKUEANU>
<SKUEANC></SKUEANC>
</access>
</SKU_TMP>
</Statement1>
The problem is that I have tried everything, even logging the DB query (though unsuccessful) but am not able to insert data into this table. The user name and password is correct. Below is the latest error:
"Delivering the message to the application using connection JDBC_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'SKU_TMP' (structure 'Statement1'): java.sql.SQLException: ORA-00913: too many values ."
Earlier I have also received the following error (while using 😞
u201CJDBC Message processing failed, due to Error processing request in sax parser: Error when executing statement for table/stored proc. 'SKU_TMP' (structure 'Statement1'): java.sql.SQLException: ORA-01747: invalid user.table.column, table.column, or column specificationu201D
Experts, please help me to resolve this predicament.
Best regards,
Varun
>u201CJDBC Message processing failed, due to Error processing request in sax parser: Error when executing statement for table/stored proc. 'SKU_TMP' (structure 'Statement1'): java.sql.SQLException: ORA-01747: invalid user.table.column, table.column, or column specificationu201D
Your data structure elements must match the table description. That means table column names must match the targtet jdbc structure field names. At runtime jdbc adapter converts the structure into sql query. If the target field names does not match you get the above error mesg.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello All,
Thanks for your valuable suggestions.
The problem was with the 'FormatNum' function.
This mapping is being designed for an European client and they use "," (comma) for a decimal point. But in the database insert query, the comma was being taken as a separator between values and that is how I was getting "too many values" error. I am inserting the records with a decimal point now instead of a comma and the scenario is working fine.
Thanks again,
Best regards,
Varun
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Varun,
Check your DB table structure and then make an INSERT accordingly. This happens due to improper structure.
Regards,
Naveen
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Please check the Exact table column name with your XML TAG Name .
also CrossCheck the number of columns you are specifying
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
84 | |
10 | |
10 | |
9 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.