You configure the sender JDBC adapter to be able to send content from databases to the Integration Server or to the PCK.
See below under Defining Processing Parameters, SQL Statement for Query, and SQL Statement for Update.
The example shows the correct specification of the SELECT and UPDATE statement:
SQL statement for query: SELECT * FROM table WHERE processed = 0;
SQL statement for update: UPDATE table SET processed = 1 WHERE processed = 0;
processed is the indicator in the database.
This selection is not available in the PCK.
Defining the Database Connection
The JDBC adapter must load the class to be able to access the driver.
The entries for JDBC Driver and Connection depend on the JDBC driver. You will find this information in the documentation from the provider.
Defining Processing Parameters
For Quality of Service Exactly Once In Order, enter the Queue Name.
See: Quality of Service
If you set Poll Interval (secs) to null, processing times are short and close to real time.
If you set Poll Interval (secs) and Poll Interval (msecs) to null, the adapter is called once.
If you set the value to null, the adapter is canceled if an error occurs, even if a value greater than null is specified for Poll Interval (secs).
If you do not enter a value, the value from Poll Interval (secs) is used.
It must be an INSERT, UPDATE, or DELETE statement.
The document name is inserted in the message as the main XML tag.
The namespace is added to the document name.
The SQL statement must be an INSERT, UPDATE, or DELETE statement.
This is recommended if the data has not only been read, but also changed by a stored procedure entered under Query SQL Statement.
Defining an Operating System Command
When this time interval is exceeded, the adapter continues processing. The executing program continues to run in the background.
The adapter writes the output (STDOUT and STDERR) for the operating system command in the system trace.
Message processing is independent of any errors that occur during the execution of a configured operating system command.
Defining the Adapter Status
Defining Additional Parameters in Advanced Mode
You can run database transactions at different levels, known as isolation levels. The options correspond to the JDBC constants:
Only reduce the security level when necessary and as far as necessary. You must find another way to make sure that data inconsistencies cannot be generated in the database, usually by preventing parallel access.
Do not set this indicator if the JDBC driver supports transactions.
If this indicator is not set, the resultset looks as follows:
<resultset>
<row>
<column-name1>column-value</ column-name1>
<column-name2></column-name2>
<column-name3>column-value</ column-name3 >
<column-name4></column-name4>
</row>
<row>
<column-name1>column-value</ column-name1>
<column-name2></ column-name2>
</row>
</resultset>
If this indicator is set, the resultset looks as follows:
<resultset>
<row>
<column-name1>column-value</ column-name1>
<column-name3>column-value</ column-name3>
</row>
<row>
<column-name1>column-value</ column-name1>
</row>
</resultset>
Due to messages of large size, it is possible that there could be out of memory errors, which could lead to JEE server node failures.
Following are the parameters to be set in the table to limit the message size:
More information on configuring the maximum message size: SAP note 1253826.
More information on configuring the maximum row size: SAP note 1253826.
Additional parameters are published in SAP Note 801367.
The system converts the table resulting from the query SQL statement into a valid XML document and sends it to the Integration Engine/PCK. The document looks like this:
<resultset>
<row>
<column-name1>column-value</ column-name1>
<column-name2>column-value</ column-name2>
<column-name3>column-value</ column-name3>
</row>
<row>
<column-name1>column-value</ column-name1>
<column-name2>column-value</ column-name2>
<column-name3>column-value</ column-name3>
</row>
</resultset>