[ 
https://issues.apache.org/jira/browse/DERBY-2350?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12508981
 ] 

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

Some trigger background here:

http://wiki.apache.org/db-derby/TriggerImplementation

I believe 2) is the best approach. The before & after rows are currently forced 
as JDBC objects which means a performance hit for most datatypes.
There's no reason to use JDBC, it's a hang over from Cloudscape 4.x when a 
non-standard mechanism was provided to access the before & after rows. But now 
Derby uses standard SQL to access the before & after rows, thus there is no 
requirement to convert the row into a JDBC form, keeping the rows as Derby rows 
(Row & DataValueDescriptor's) would make more sense. This approach would also 
avoid any jdk specific issues since the SQLXML datatype was only introduced in 
JDBC 4.

Not sure of the effort involved, I'll try to think about it.

> Use of XML values in the action statement of a trigger throw exceptions.
> ------------------------------------------------------------------------
>
>                 Key: DERBY-2350
>                 URL: https://issues.apache.org/jira/browse/DERBY-2350
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.3.0.0
>            Reporter: Daniel John Debrunner
>
> A  trigger like, where V, V1 and V2 are columns of type XML will thrown an 
> exception when fired.
> CREATE TRIGGER AIS AFTER INSERT ON T_MAIN 
>                 REFERENCING NEW_TABLE AS N
>                 FOR EACH STATEMENT  
>                 INSERT INTO T_ACTION_STATEMENT(A, V1, ID, V2) 
>                 SELECT 'I', V, ID, V FROM N
> ERROR 38000: The exception 'java.sql.SQLException: An attempt was made to get 
> a data value of type 'java.lang.Object' from a data value of type 'XML'.' was 
> thrown while evaluating an expression.
> Most likely because triggers are implementing using VTIs and hence JDBC 
> ResultSets and XML is not supported through JDBC yet.
> TriggerTest shows this issue, see the comment with the bug number to 
> reproduce.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to