If you are trying to insert, update, or delete from a SQL Server linked server by using the DB2OLEDB provider, you may also receive the following error when you are using 4-part name query:
- The data source is DB2/400.
- The Auto Commit initialization property is set to FALSE. You can set the initialization properties in a UDL file using Microsoft Data Links, the OLE DB initialization string, or ADO connection string.
- The Distributed Transaction initialization property is set to TRUE. NOTE: this applies to Host Integration Server only.
- The target object that you are attempting to update is an AS/400 physical file or keyed physical file residing in an AS/400 library (as opposed to a DB2/400 collection) for which journaling has not been enabled.
- Set Auto Commit to TRUE, or set Distributed Transaction to FALSE. In this case, INSERT, UPDATE, and DELETE operations are automatically committed whenever they are executed. Journaling is not required .
- Enable journaling in AS/400 for that particular table (physical file) for which you want to do an INSERT, UPDATE, or DELETE.
To enable journaling, do the following:
- Create the journal receiver (CRTJRNRCV).
- Create the journal (CRTJRN) by inputting the journal receiver created in step 1.
- Start the journal physical file (STRJRNPF) by inputting the journal and journal receiver created in steps 1 and 2 and associating the journal to a specific SQL table (physical file).
AS/400 and DB2 are IBM products.
The third-party products that are discussed in this article are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, regarding the performance or reliability of these products.
Article ID: 286464 - Last Review: Feb 22, 2007 - Revision: 1