You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@metamodel.apache.org by "Kasper Sørensen (JIRA)" <ji...@apache.org> on 2016/07/29 15:46:20 UTC

[jira] [Resolved] (METAMODEL-1106) Could not execute insert statement: INSERT INTO dbo."tbl_index" (index_id,index) VALUES (?,?): Incorrect syntax near 'index'.

     [ https://issues.apache.org/jira/browse/METAMODEL-1106?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kasper Sørensen resolved METAMODEL-1106.
----------------------------------------
       Resolution: Fixed
         Assignee: Kasper Sørensen
    Fix Version/s: 4.5.4

> Could not execute insert statement: INSERT INTO dbo."tbl_index" (index_id,index) VALUES (?,?): Incorrect syntax near 'index'. 
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: METAMODEL-1106
>                 URL: https://issues.apache.org/jira/browse/METAMODEL-1106
>             Project: Apache MetaModel
>          Issue Type: Bug
>    Affects Versions: 4.5.3
>            Reporter: ASHISH PANCHOLI
>            Assignee: Kasper Sørensen
>            Priority: Blocker
>             Fix For: 4.5.4
>
>         Attachments: AbstractRowBuilder.java
>
>
> When I am trying to execute the insert statement for the table which has reserve keyword "index" in its column name then Apache meta-model is throwing the below error:
> {code}
> org.openskye.core.SkyeException: Could not execute insert statement: INSERT INTO dbo."tbl_index" (index_id,index) VALUES (?,?): Incorrect syntax near 'index'. If this is intended as a part of a table hint, A WITH keyword and parenthesis are now required. See SQL Server Books Online for proper syntax.
> 	at org.xyz.abc.sto.ext.jc.Js$1.run(Js.java:376) ~[classes/:na]
> 	at org.apache.metamodel.jdbc.JdbcDataContext.executeUpdate(JdbcDataContext.java:840) ~[MetaModel-jdbc-4.5.3.jar:4.5.3]
> 	at org.xyz.abc.sto.ext.jc.Js.put(Js.java:389) ~[classes/:na]
> 	at org.os.ta.st.ex.Esw.write(Esw.java:56) ~[classes/:na]
> 	at java.util.ArrayList.forEach(ArrayList.java:1249) ~[na:1.8.0_77]
> 	at java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1080) ~[na:1.8.0_77]
> 	at org.os.ta.st.ex.Esw.write(Esw.java:52) ~[classes/:na]
> 	at org.os.ta.st.ex.Esw$$FastClassBySpringCGLIB$$69e5fbcf.invoke(<generated>) ~[classes/:na]
> 	at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-4.2.6.RELEASE.jar:4.2.6.RELEASE]
> 	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:651) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
> 	at org.os.ta.st.ex.Esw$$EnhancerBySpringCGLIB$$e653927b.write(<generated>) ~[classes/:na]
> 	at org.os.ta.st.ex.Esw$$FastClassBySpringCGLIB$$69e5fbcf.invoke(<generated>) ~[classes/:na]
> 	at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-4.2.6.RELEASE.jar:4.2.6.RELEASE]
> 	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:720) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
> 	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
> 	at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:133) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
> 	at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:121) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
> 	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
> 	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:655) ~[spring-aop-4.2.6.RELEASE.jar:4.2.6.RELEASE]
> 	at org.os.ta.st.ex.Esw$$EnhancerBySpringCGLIB$$8da3c6df.write(<generated>) ~[classes/:na]
> 	at org.springframework.batch.core.step.item.SimpleChunkProcessor.writeItems(SimpleChunkProcessor.java:175) ~[spring-batch-core-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.core.step.item.SimpleChunkProcessor.doWrite(SimpleChunkProcessor.java:151) ~[spring-batch-core-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.core.step.item.SimpleChunkProcessor.write(SimpleChunkProcessor.java:274) ~[spring-batch-core-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.core.step.item.SimpleChunkProcessor.process(SimpleChunkProcessor.java:199) ~[spring-batch-core-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.core.step.item.ChunkOrientedTasklet.execute(ChunkOrientedTasklet.java:75) ~[spring-batch-core-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.core.step.tasklet.TaskletStep$ChunkTransactionCallback.doInTransaction(TaskletStep.java:406) ~[spring-batch-core-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.core.step.tasklet.TaskletStep$ChunkTransactionCallback.doInTransaction(TaskletStep.java:330) ~[spring-batch-core-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133) ~[spring-tx-4.2.6.RELEASE.jar:4.2.6.RELEASE]
> 	at org.springframework.batch.core.step.tasklet.TaskletStep$2.doInChunkContext(TaskletStep.java:271) ~[spring-batch-core-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.core.scope.context.StepContextRepeatCallback.doInIteration(StepContextRepeatCallback.java:81) ~[spring-batch-core-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.repeat.support.RepeatTemplate.getNextResult(RepeatTemplate.java:374) ~[spring-batch-infrastructure-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.repeat.support.RepeatTemplate.executeInternal(RepeatTemplate.java:215) ~[spring-batch-infrastructure-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.repeat.support.RepeatTemplate.iterate(RepeatTemplate.java:144) ~[spring-batch-infrastructure-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> 	at org.springframework.batch.core.step.tasklet.TaskletStep.doExecute(TaskletStep.java:257) ~[spring-batch-core-3.0.7.RELEASE.jar:3.0.7.RELEASE]
> {code}
> I have also tried to enclosed the column name with "[" but it's throwing:
> {code}
> No such column in table: [index_id], available columns are: [Column[name=index_id,columnNumber=0,type=TINYINT,nullable=false,nativeType=tinyint,columnSize=3], Column[name=index,columnNumber=1,type=VARCHAR,nullable=true,nativeType=varchar,columnSize=2147483647]]
> {code}
> And when I am trying to enclosed it with "" then I am getting the same error:
> {code}
> java.lang.IllegalArgumentException: No such column in table: "index_id", available columns are: [Column[name=index_id,columnNumber=0,type=TINYINT,nullable=false,nativeType=tinyint,columnSize=3], Column[name=index,columnNumber=1,type=VARCHAR,nullable=true,nativeType=varchar,columnSize=2147483647]]
> {code}
> Please let me know - how to handle reserve keywords having in column name  using Apache Meta-model.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)