技术文章 - CS266042

同步(同步数据库)失败,出现错误 "2]。sql SQLSyntaxErrorException: TNSNAMES.ORA-00933: SQL 命令未正确结束" 的 Servigistics Service Parts Management

已修改: 11-Jun-2019   


注意:本文已使用机器翻译软件翻译,以方便非英语客户阅读。但翻译内容可能包含语法错误或不准确之处。请注意, PTC对本文所含信息的翻译准确性及使用后果不承担任何责任。请在 此处 查看本文的英文原始版本以便参考。有关机器翻译的更多详情,请单击 此处
感谢您告诉我们。我们将尽快审阅此译文。

适用于

  • Servigistics Service Parts Management 10.7.0.10

说明

  • SyncDB (Synchronize database)失败,错误为java.sql.SQLSyntaxErrorException:ORA-00933:SQL command not properly ended
  • autopilot.log包含:
    • 在 springframework 支持 SQLExceptionSubclassTranslator doTranslate (SQLExceptionSubclassTranslator,java:95)
      在 springframework 支持 AbstractFallbackSQLExceptionTranslator (AbstractFallbackSQLExceptionTranslator,java:72)
      在 springframework 支持 AbstractFallbackSQLExceptionTranslator (AbstractFallbackSQLExceptionTranslator,java:80)
      在 springframework 中 JdbcTemplate 执行(JdbcTemplate .java:407)
      springframework 在 JdbcTemplate 更新时(JdbcTemplate .java:521)
      在同步上的 extractData (段数: Segment (段 .java .. 173)
      在 springframework JdbcTemplate $ 1QueryStatementCallback. doInStatement (JdbcTemplate .java:446)
      在 springframework 中 JdbcTemplate 执行(JdbcTemplate .java:396)
      在 springframework 中 JdbcTemplate 查询(JdbcTemplate .java:456)
      在 com svg 同步中。处理(段 .java:144)
      在 BatchConnectorImpl 上的 doRun (BatchConnectorImpl .java:110)
      在 BatchConnectorImpl 访问 $ 000 (BatchConnectorImpl,java:29)。
      在 BatchConnectorImpl doInTransaction (BatchConnectorImpl .java:87)的 com 中
      在 TransactionUtil 中(TransactionUtil .java:45)(在 com)上
      在 BatchConnectorImpl (BatchConnectorImpl:84)的 com 上运行
      在同步上的 SyncConnector 进程(SyncConnector .java:207)。
      在 BatchConnectorImpl 上的 doRun (BatchConnectorImpl .java:110)
      在 BatchConnectorImpl 访问 $ 000 (BatchConnectorImpl,java:29)。
      在 BatchConnectorImpl doInTransaction (BatchConnectorImpl .java:87)的 com 中
      在 TransactionUtil 中(TransactionUtil .java:45)(在 com)上
      在 BatchConnectorImpl (BatchConnectorImpl:84)的 com 上运行
      在 com svg doInConnection 任务。子任务为 $1 (子任务. java:98)
      在 com svg doInConnection 任务。子任务为 $1 (子任务. java:94)
      在 ConnectionTemplate doInTransaction (ConnectionTemplate,java:32)的位置
      在 TransactionUtil 中(TransactionUtil .java:45)(在 com)上
      在 ConnectionTemplate 中(ConnectionTemplate,java:27)。
      在 ConnectionUtil 中(ConnectionUtil .java:53)(在 com)上
      在 ConnectionUtil (ConnectionUtil:47)处执行的。
      在 runConnector (在子任务. java:94)
      在 AbstractTask (AbstractTask:203)上执行的。
      在 com svg 上。运行(子任务 .java:80)
      在太阳. NativeMethodAccessorImpl invoke0 (固有方法)
      在太阳. NativeMethodAccessorImpl 调用(NativeMethodAccessorImpl:57)
      在太阳. DelegatingMethodAccessorImpl 调用(DelegatingMethodAccessorImpl:43)
      在 java lang.ini 中。调用(方法 .java:606)
      在 springframework aop AopUtils. invokeJoinpointUsingReflection (AopUtils. java:317)
      在 springframework 上 aop。 ReflectiveMethodInvocation invokeJoinpoint (ReflectiveMethodInvocation .java:183)
      springframework 在 aop ReflectiveMethodInvocation。继续(ReflectiveMethodInvocation java:150)
      在 springframework aop 的 MethodBeforeAdviceInterceptor 调用(MethodBeforeAdviceInterceptor java:51)。
      springframework 在 aop 的 ReflectiveMethodInvocation。继续(ReflectiveMethodInvocation:161)
      在 springframework 事务处理。 TransactionInterceptor $ proceedWithInvocation (TransactionInterceptor:96)
      在 springframework 事务处理。 TransactionAspectSupport invokeWithinTransaction (TransactionAspectSupport:260)
      在 springframework 事务处理侦听器 TransactionInterceptor 调用(TransactionInterceptor .java:94)
      springframework 在 aop 的 ReflectiveMethodInvocation。继续(ReflectiveMethodInvocation:172)
      在 springframework aop。 ExposeInvocationInterceptor 调用(ExposeInvocationInterceptor:91)
      springframework 在 aop 的 ReflectiveMethodInvocation。继续(ReflectiveMethodInvocation:172)
      在 springframework (aop)。 JdkDynamicAopProxy 调用(JdkDynamicAopProxy:204)
      在 .com. $Proxy 523 运行(未知源)
      在实施 TaskServiceImpl $1。 run (TaskServiceImpl .java:409)。
      在 .java. run (Thread:724)
      在工具上的 ThreadUtil $1 运行(ThreadUtil .java:43)
      由以下原因导致: SQLSyntaxErrorException: TNSNAMES.ORA-00933: SQL 命令未正确结束

      在 T4CTTIoer processError (T4CTTIoer .java:440)
      在 T4CTTIoer processError (T4CTTIoer .java:396)
      在 T4C8Oall processError (T4C8Oall .java:837)
      在 T4CTTIfun 接收(T4CTTIfun .java:445)
      在 T4CTTIfun doRPC (T4CTTIfun .java:191)
      在 T4C8Oall doOALL (T4C8Oall .java:523)
      在 T4CStatement doOall8 (T4CStatement .java:193)
      在 T4CStatement executeForRows (T4CStatement .java:999)
      在 OracleStatement doExecuteWithTimeout (OracleStatement .java:1315)
      在 OracleStatement executeUpdateInternal (OracleStatement .java:1822)
      在 OracleStatement executeUpdate (OracleStatement .java:1787)
      在 OracleStatementWrapper executeUpdate (OracleStatementWrapper .java:280)
      在太阳处 GeneratedMethodAccessor251 调用(未知源)
      在太阳. DelegatingMethodAccessorImpl 调用(DelegatingMethodAccessorImpl:43)
      在 java lang.ini 中。调用(方法 .java:606)
      在 ProxyHandler 中,在数据库中支持。 invoke (ProxyHandler:28)
      在 QueryMethodInvoker 中,svg. invoke (QueryMethodInvoker:27)。
      在 ProxyHandler $2 doInDeadlockRetry (ProxyHandler,java:65)处。
      在 DeadlockRetry 中,svg. execute (DeadlockRetry:27)。
      在 ProxyHandler (ProxyHandler:62)上的支持的调用。
      在 StatementHandler 中,svg. invoke (StatementHandler:40)。
      在 $Proxy 175. executeUpdate (未知源)
      在 springframework JdbcTemplate $ 1UpdateStatementCallback. doInStatement (JdbcTemplate .java:511)
      在 springframework JdbcTemplate $ 1UpdateStatementCallback. doInStatement (JdbcTemplate .java:509)
      在 springframework 中 JdbcTemplate 执行(JdbcTemplate .java:396)
  • 或者有时包含以下消息:
    • 调试 QueryLogger-在中插入到 IPCSTMP_G49285 选择零件 id、位置 id、26518,从 IPCSTMP_G49292 s 连接到零件 id = ns 上的 IPCSTMP_G49294 ns。零件 id 和 s 位置 id = ns。位置 id 和 ns。SegmentID = 15481,其中 s. SVCPPL_PERIOD = N ' M_18_24 ' 或 s. SVCPPL_PERIOD = N ' M_18_24 '),s. 位置 id = 735 和 s PartFamilyID = 7 = PartCustom8 = N'y ' and s. SKUCust2 = ' and (s. N'SA = PartCustom6 ' 或 s. N'44AM = PartCustom6 ' 或 s。PartCustom6 = N'HH94JB ') and (s. SVCPPL_PERIOD = N ' M_12_18 '。()。 newPartLocSegmentTable (SegmentFinder (:96)
      调试 CustomSQLExceptionTranslator-无法翻译 SQLException,错误代码为 ' 933 ',现在将尝试使用回退转换器
这是文章 266042 的 PDF 版本,可能已过期。最新版本 CS266042