[ 
http://issues.apache.org/jira/browse/DERBY-690?page=comments#action_12367531 ] 

Daniel John Debrunner commented on DERBY-690:
---------------------------------------------

Thanks for the answers, it would be good to update the writeup to reflect your 
answers.

Fernanda wrote:
----
Two methods have been added to NoPutResultSet, updateCachedRow(ExecRow row) and 
markCachedRowAsDeleted(), in order to view own changes. They are called from 
UpdateResultSet.open() and DeleteResultSet.open() respectively and they 
propagate the changes done to the current row to ScrollInsensitiveResultSet, so 
that the hashtable can be updated.
----

So, to confirm, this means the updated row in the result set will reflect the 
state of the row in the database and not the values set by the updateRow() 
call? Good to state here exactly what the behaviour is expected to be. So if I 
update a column to value 10 using rs.updateRow(), but some processing in the 
SQL positioned update (say a fired trigger)  results in the column being stored 
as 20, then will the ResultSet have 20 or 10? Does the answer have any effect 
on the "own vs others" updates being visible?



> Add scrollable, updatable, insensitive result sets
> --------------------------------------------------
>
>          Key: DERBY-690
>          URL: http://issues.apache.org/jira/browse/DERBY-690
>      Project: Derby
>         Type: New Feature
>   Components: JDBC
>     Reporter: Dag H. Wanvik
>     Assignee: Dag H. Wanvik
>     Priority: Minor
>  Attachments: DERBY-690-v1.diff, DERBY-690-v1.stat, SURChanges-v1.pdf, 
> sur-proposal.txt, writeup-v1.html
>
> JDBC result sets are created with three properties: type, concurrency
> and holdability. The type can be one of TYPE_FORWARD_ONLY,
> TYPE_SCROLL_INSENSITIVE and TYPE_SCROLL_SENSITIVE. The concurrency can
> be one of CONCUR_READ_ONLY and CONCUR_UPDATABLE. The holdability can
> be one of HOLD_CURSORS_OVER_COMMIT and CLOSE_CURSORS_AT_COMMIT.
> JDBC allows the full cross product of these. SQL 2003 prohibits the
> combination {TYPE_SCROLL_INSENSITIVE, CONCUR_UPDATABLE}, but this
> combination is supported by some vendors, notably Oracle.
> Currently, Derby supports JDBC result sets in a limited
> way. Holdability is supported. Furthermore, the following is
> supported: 
>          - forward-only, read-only 
>          - forward-only, updatable (update, delete, but not insert)
>            Also, in the network driver, support for some data types
>            conversions is missing.
>          - scroll insensitive, read-only
> We (Fernanda and Andreas will cooperate with me on this) propose a
> plan to add support for the combination:
>          - scroll insensitive, updatable
> for both the embedded driver and the network client driver. 
> As a part of this we would also like to add the missing insert
> operation to the {forward-only, updatable} result sets (JIRA-100), and
> remove the requirement for an explicit "FOR UPDATE" clause in the SQL
> query to achieve updatability if CONCUR_UPDATABLE is specified
> (JIRA-231).
> The full proposal text is uploaded as an attachment, including a proposed
> functional specification.
> This JIRA will  be used to track sub-issues for this effort. The sub-issues 
> will be linked back to this issue.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to