[ 
https://issues.apache.org/jira/browse/DERBY-1773?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12833446#action_12833446
 ] 

Bryan Pendleton commented on DERBY-1773:
----------------------------------------

Interestingly, 
UpdatableResultSetTest.testDeleteRowWithCorrelationForColumnName()
has some very similar, but not identical, scenarios.

That test case appears to state that updating a column which has an alias should
not be allowed.

I'll study this test case in more detail, and try to figure out why we refuse 
the statement
in that case, but not in the scenario from the repro script.


> insertRow() and updateRow() fail with syntax error when column has an alias
> ---------------------------------------------------------------------------
>
>                 Key: DERBY-1773
>                 URL: https://issues.apache.org/jira/browse/DERBY-1773
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>    Affects Versions: 10.2.1.6
>            Reporter: Knut Anders Hatlen
>            Assignee: Bryan Pendleton
>            Priority: Minor
>         Attachments: Alias.java
>
>
> When the select query used in an updatable result set has column aliases, a 
> syntax error is thrown when executing ResultSet.insertRow() and 
> ResultSet.updateRow(). The problem is seen on embedded and client. Repro is 
> attached.
> Exception in thread "main" ERROR 42X14: 'A1' is not a column in table or VTI 
> 'APP.T'.
>         at 
> org.apache.derby.iapi.error.StandardException.newException(StandardException.java:316)
>         at 
> org.apache.derby.impl.sql.compile.ResultColumn.bindResultColumnByName(ResultColumn.java:677)
>         at 
> org.apache.derby.impl.sql.compile.ResultColumnList.bindResultColumnsByName(ResultColumnList.java:682)
>         at 
> org.apache.derby.impl.sql.compile.ResultSetNode.bindResultColumns(ResultSetNode.java:683)
>         at 
> org.apache.derby.impl.sql.compile.SelectNode.bindResultColumns(SelectNode.java:742)
>         at 
> org.apache.derby.impl.sql.compile.UpdateNode.bind(UpdateNode.java:349)
>         at 
> org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:345)
>         at 
> org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:111)
>         at 
> org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:723)
>         at 
> org.apache.derby.impl.jdbc.EmbedResultSet.updateRow(EmbedResultSet.java:3734)
>         at Alias.main(Alias.java:15)

-- 
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