技术文章 - CS405625

AddDataTableEntry 服务无法使用 SQL Server 持久化提供程序在 ThingWorx 中添加包含超过 254 个字段的条目

已修改: 29-Sep-2025   


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

适用于

  • ThingWorx Platform 9.3
  • Microsoft SQL Server as Persistence Provider

说明

  • 当使用 SQLServer 作为持久化提供程序时,在具有大量字段的数据表上执行调用AddDataTableEntry 的服务时,会出现以下错误
    • [1,018] Data store unknown error: [Error occurred while accessing the data provider.]
  • 在 Logging Subsystem 中启用堆栈跟踪会在 ErrorLog.log 中显示以下异常
    • [L: ERROR] [O: E.c.q.l.c.Logger] [I: ] [U: Administrator] [S: ] [P: ] [T: https-openssl-nio-443-exec-5] Unable to Invoke Service AddOrUpdateDataTableEntries on XXXX: java.lang.RuntimeException: com.thingworx.common.exceptions.DataAccessException: [1,018] Data store unknown error: [Error occurred while accessing the data provider.] com.microsoft.sqlserver.jdbc.SQLServerException: The concat function requires 2 to 254 arguments. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:262) at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1624) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:594) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:524) at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7194) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2979) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:248) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:223) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeQuery(SQLServerPreparedStatement.java:446) at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:431) at com.thingworx.persistence.common.SQLStatementUtilities.executeQuery(SQLStatementUtilities.java:107) at com.thingworx.persistence.mssql.dao.BaseMssqlDao.executeQuery(BaseMssqlDao.java:134) ... 17 common frames omitted

这是文章 405625 的 PDF 版本,可能已过期。最新版本 CS405625