【发布时间】:2012-07-28 12:04:25
【问题描述】:
我使用以下定义为 Teradata 标识列创建了一个表:
默认生成的 ID 整数作为身份 (从 1 开始 增加 1 最小值 0 最大值 100000000 无循环), ---- 唯一主索引 (ID)几个月来,ID 列一直正常工作,自动为该列生成唯一值。然而,在过去的一个月里,ELMAH间歇性地从我们的 .NET 4.0 ASP.NET 应用程序中报告以下异常:
Teradata.Client.Provider.TdException: [Teradata Database] [2801] Duplicate unique prime key error in DATABASENAME.TABLENAME.
我能够通过打开 SQL 助手并使用原始 SQL 将一堆记录插入到表中来复制它。不出所料,大多数时候它会插入成功,但其他时候它会抛出上述异常。
出现此错误的原因似乎是 Teradata 正在尝试为其先前生成的该列生成一个值。
有没有人知道如何弄清正在发生的事情的真相?至少,我想要一些方法来更深入地调试问题。
【问题讨论】: