Page 1 of 1
Ora-1086 - save point never established
Posted: Thu 20 Aug 2009 07:29
by kurtbilde
Hi,
Using the latest version and Delphi 2007. On a TOraTable I get an Ora-1086 Save Point never established: LOCK_TATEMPTABLE when calling taTempTable.Cancel;
I don't create any locks....
When having a table with no primary key, the TOraTable requres to have the ROWID added, else one won't be able to do a TOraTable.edit.... TOraTable.post; without an error telling that Old_RowId need to be added...
-Kurt
Posted: Fri 21 Aug 2009 07:52
by Plash
The lock mechanism in TOraTable works in such way. This error is catched inside ODAC. You should not worry about it.
You can set the LockMode property of TOraTable to lmNone. In this case TOraTable will not lock and unlock records.
TOraTable always adds ROWID to the field list when opening a table without a primary key. So you can edit this table without problems.
Posted: Mon 24 Aug 2009 06:24
by kurtbilde
Hi,
But I do worry as it shouts down the application!!!!
About the rowid - why isn't it none visual - internal to ODAC?
-Kurt
Posted: Tue 25 Aug 2009 08:17
by kurtbilde
It seems like the lateste version can't handle the TOraTable.Cancel; without thowing the ora-1086 (lockMode on the TOraTable set to default lockimmideatly) and this closes the application at once with the warning as the only clue to the enduser!
-Kurt
Posted: Tue 25 Aug 2009 09:23
by Plash
We could not reproduce the problem. Please send to support*devart*com a complete small sample that demonstrates the problem, including the script for creating database objects.
Posted: Thu 27 Aug 2009 05:52
by kurtbilde
Simply: Create a table. Make the nesessary stuff to connect. On the TOratable set the sortorder to the primary key's field. Make the code setting the TOratable in to edit mode (TOraTable.edit).
Then add a table that have a constran to the tables primary key. Make code to set this one into edit mode. Make a button that cancels both tables edit-modus.
Second question: Couldn't the Row_ID be an internal hiden field? Why does it need to be visible in order not to get the Old_Row_id error? And why is the introduced in .48?
Posted: Fri 28 Aug 2009 07:36
by Plash
Unfortunatly we cannot reproduce the problems. Please make and send us a small test project that demonstrates the problem, including the script for creating database objects.
Posted: Sun 30 Aug 2009 20:34
by kurtbilde
Please answer:
Couldn't the Row_ID be an internal hiden field? Why does it need to be visible in order not to get the Old_Row_id error? And why is the introduced in .48?
I have provided a Devart constructed dialog....
-Kurt
Posted: Fri 04 Sep 2009 15:03
by kurtbilde
Hi,
When you say you can't reproduce then What version of Oracle and with/or without the use of net mode?
-Kurt
Posted: Mon 07 Sep 2009 07:53
by Plash
Please just send us a small sample project that demonstrate the problems.