gpt4 book ai didi

Teradata - 发生错误的列名

转载 作者:行者123 更新时间:2023-12-01 08:06:11 24 4
gpt4 key购买 nike

我们无法访问我们的 Teradata PROD,我们在 SIT、UAT 中开发脚本和测试。提升为PROD时,偶尔会出现如下错误:

Invalid Date/Timestamp
Numeric overflow occurred
Untranslatable character
....

为什么 Teradata 不显示发生错误的确切列名?

我们需要检查脚本,其中大约 20 列从 varchar 转换为日期/时间戳,并且大约 10 列容易发生数字溢出。我们需要单独浏览每一列,预计这可能是罪魁祸首。当错误确实显示列名时会更放心。

我敢肯定,因为它直到现在还没有实现,所以假设由于运行时错误,这应该会更复杂。但是,我猜 ET_、UV_ 错误表名确实捕获了其中一些错误(可能不是全部)。

您能否解释一下什么时候可以在 ET_、UV_ 表上实现,为什么不能对普通 SQL 查询实现以显示错误发生在哪一列?

最佳答案

这些运行时错误与对某个值的操作相关联,不一定与特定列相关联——它也可能是表达式的结果。

我想将查询中所有可能出错的表达式与原始 SQL 的相应部分相关联会产生一定的开销。这肯定需要大量的开发工作。您可能想就此询问您的 Teradata 代表。

The ET/UV tables are maintained by TPT , 它处理外部数据并且更有可能遇到意外值。

如果这是常见情况,您可能需要清理数据。通常有一种方法可以使用内置的 SQL 函数或 UDF 找到导致所列错误的行,例如:

(似乎没有通向 check if a CAST will succeed 的方法。)

关于Teradata - 发生错误的列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32423681/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com