Enterprise Architect Source Import 警告字符串或二进制数据将被截断
Enterprise Architect Source Import warns that string or binary data would be truncated
我正在将一个相当大的解决方案的 C# 源代码导入到由 SQL 数据库支持的 Enterprise Architect 中,我反复收到一个正在导入的特定类型的消息框说
用于 SQL 服务器的 Microsoft OLE DB 提供程序 [-2147217833]:字符串或二进制数据将被截断。
是否有一种简单的方法可以找出导致它失败的原因?
编辑
正如 Geert 所指出的,我查看了 DBError.txt
,其中的内容或多或少是
Context:
Update t_connector SET
... DestElement='List<Some_Really_Very_Very_Long_Type_Name_With_Subclass>' ...
然后我查看了 DB 方案,并在那里搜索了相应列的声明,结果是
DestElement (nvarchar(50), null)
我能否简单地修改列定义,使其可以容纳 100 个字符,否则会破坏我的 EA 吗?
首先要检查的是 DBError.txt
文件。您可以在 %appdata%\Sparx Systems\EA
找到它
通常您可以在该文件中找到有问题的 SQL 语句,并使用它来找出问题所在。
如果这没有帮助,您可以在 SQL 服务器上启动分析器,导入代码直到出现错误,然后检查最后的 insert/update 语句是什么。
如果我不得不猜测它可能是 class、属性、超过 255 个字符的操作或参数的名称,或者可能是一些非常大的注释。
EA 中的大多数名称字段限制为 255 个字符。注释字段通常(几乎)没有限制。
我正在将一个相当大的解决方案的 C# 源代码导入到由 SQL 数据库支持的 Enterprise Architect 中,我反复收到一个正在导入的特定类型的消息框说
用于 SQL 服务器的 Microsoft OLE DB 提供程序 [-2147217833]:字符串或二进制数据将被截断。
是否有一种简单的方法可以找出导致它失败的原因?
编辑
正如 Geert 所指出的,我查看了 DBError.txt
,其中的内容或多或少是
Context:
Update t_connector SET
... DestElement='List<Some_Really_Very_Very_Long_Type_Name_With_Subclass>' ...
然后我查看了 DB 方案,并在那里搜索了相应列的声明,结果是
DestElement (nvarchar(50), null)
我能否简单地修改列定义,使其可以容纳 100 个字符,否则会破坏我的 EA 吗?
首先要检查的是 DBError.txt
文件。您可以在 %appdata%\Sparx Systems\EA
通常您可以在该文件中找到有问题的 SQL 语句,并使用它来找出问题所在。
如果这没有帮助,您可以在 SQL 服务器上启动分析器,导入代码直到出现错误,然后检查最后的 insert/update 语句是什么。
如果我不得不猜测它可能是 class、属性、超过 255 个字符的操作或参数的名称,或者可能是一些非常大的注释。
EA 中的大多数名称字段限制为 255 个字符。注释字段通常(几乎)没有限制。