SSIS ODBC错误运行连接到Sybase服务器的多个DFT

SSIS ODBC error running multiple DFTs connecting to Sybase server

使用ODBC连接连接到Sybase ASE服务器时,SSIS中出现一个奇怪的错误。我有几个DFT连接到同一服务器,当我运行整个程序包时,其中几个失败了,并出现以下错误消息。如果我一次运行一个DFT,它们将成功完成。我曾考虑过重组程序包以按顺序运行它们,但是我将失去并行执行的好处,更不用说它是一个很大的程序包,将需要大量的工作。希望有人之前曾看到过此内容,因为google尚未提供任何答案。

[ODBC Source [14]] Error: Open Database Connectivity (ODBC) error occurred.
state: '08S01'. Native Error Code: 30016. [Sybase][ODBC Driver]Bad TDS
response stream received from server.
Unsupported length for TDS_INTN: 111

[ODBC Source [14]] Error: Open Database Connectivity (ODBC) error occurred.
state: '08S01'. Native Error Code: 30016. [Sybase][ODBC Driver]Bad TDS
response stream received from server. Unexpected token type received: 109.

[ODBC Source [69]] Error: Open Database Connectivity (ODBC) error occurred.
state: '01004'. Native Error Code: 32007. [Sybase][ODBC Driver]String data,
right truncated


您面临的主要错误是

Right truncation of string data

根据以下Sybase文档,此错误的可能原因是:

Non-space characters were truncated upon the assignment of string data.

建议

  • 您必须增加使用的参数/字段/变量的大小

  • 您可以将string_rtruncation option设置为Off,以便在发生截断时不会引发异常。

基于此Sybase文档

If the truncated characters consist only of spaces, no exception is raised. The setting of On corresponds to ANSI/ISO SQL/2008 behavior. When this option is set to Off, the exception is not raised and the character string is silently truncated.

String truncation may occur in several places. For example, using INSERT, UPDATE, CAST, or assignment to a variable may truncate a string if the declared destination type is too short.

类似问题链接

  • 通过ORACLE SQL * PLUS在OPENEDGE数据库中查询数据时,ODBC错误" STRING DATA,RIGHT TRUNCATED"