IsolationLevel *NONE?

Discussion of open issues, suggestions and bugs regarding UniDAC (Universal Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
blazarz
Posts: 8
Joined: Tue 09 Dec 2014 16:11

IsolationLevel *NONE?

Post by blazarz » Tue 09 Dec 2014 16:22

I have a Delphi 7 application that has a TTable instance. It's using the iSeries Access for Windows ODBC driver. I need to set the Commit Mode to "Commit Immediate". This option is not available in the IsolationLevel list. How can I set this property?

The following page includes a detailed description of the problem I'm having (SQL7008 error) as well as the SQL properties that need to be set.
https://www-304.ibm.com/support/docview ... s8N1017566

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: IsolationLevel *NONE?

Post by AlexP » Wed 10 Dec 2014 09:11

Hello,

Since ODBCUniProvider works with various ODBC drivers, it has no specific options. You can configure Commit Mode in the DSN settings. https://www-304.ibm.com/support/docview ... s8N1017566 (Figure1)

blazarz
Posts: 8
Joined: Tue 09 Dec 2014 16:11

Re: IsolationLevel *NONE?

Post by blazarz » Thu 11 Dec 2014 21:56

Yes, that's a work around. But my client really doesn't want to journal (turn on commitment control) for this particular set of files. It would be nice if there was a property editor to allow me to enter driver-specific settings (i.e., SQL_TXN_ISOLATION and SQL_AUTOCOMMIT) Maybe that's asking too much.

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: IsolationLevel *NONE?

Post by AlexP » Fri 12 Dec 2014 09:05

Instead of setting DSN for connection to the database, you can use the following connection string.

Code: Select all

  UniConnection1.ConnectString := 'Provider Name=ODBC;Server={iSeries Access ODBC Driver};System=my_system_name;Uid=myUsername;CMT=0';
where

CMT or CommitMode - Specifies the default transaction isolation level.

Code: Select all

0 = Commit immediate (*NONE)
1 = Read committed (*CS)
2 = Read uncommitted (*CHG)
3 = Repeatable read (*ALL)
4 = Serializable (*RR)

Post Reply