这似乎没有任何意义,但我从一个表中选择一个 BIGINT 数据,并将其插入另一个 BIGINT 列到另一个表中(这些表是相同的,只驻留在不同的服务器中),并且 SQL0302N 被抛出。当我将此 bigint 列的值更改为较小的值时,异常消失了。
该值本身是 2601354496。其他类似的值也会导致异常。
有什么想法吗?
巧合的是,问题不在于 BIGINT,而在于 VARCHAR。数据库是使用错误的排序规则创建的(目标为 UTF8,源为 ISO8859),并且某些特殊字符被错误地翻译。
没有显示问题,但字符串存储大小不同。然后,显然,根据数字的大小,与字符串无关,抛出错误。
但事实是:问题只出在琴弦上。通过 TOAD 或 IBM Data Studio 编辑值时,应用程序显然修复了排序规则并且问题消失了。但在我的 C# 应用程序中,它并没有发生。
我决定正确地重新创建数据库而不是修复数据,并且一切正常。
如果只有这些错误消息更清晰和更具描述性......
感谢大家的努力。