错误:数字类型的输入语法无效:" N / A" ......很好但是哪一栏?

时间:2016-08-12 14:05:11

标签: postgresql error-handling postgresql-9.5

我在PostgreSQL中运行一个函数,它包含几个函数,目的是将数据从外部表加载到我的中。在运行时我收到此错误:

  

[SELECT - 0 row,762.353 secs] [错误代码:0,SQL状态:22P02]错误:类型为numeric的输入语法无效:" N / A"     其中:PL / pgSQL函数import_data_3(整数,带时区的时间戳,带时区的时间戳,整数)第16行SQL语句   SQL语句" SELECT import_data_3(import,beg,end_t,is_l)"   PL / pgSQL函数data_import_all(带时区的时间戳,带时区的时间戳,整数,整数)第31行PERFORM

我知道这意味着什么,也是我试图转换N / A'字符串到数字,并出现此错误,问题是这个糟糕的错误没有指定发生错误的列。

有没有办法获得更精确的错误消息,告诉我错误发生的确切列?

1 个答案:

答案 0 :(得分:0)

它不在列中,而是在传递给import_data_3的其中一个参数中。

您调用了查询SELECT import_data_3(import, beg, end_t, is_l)

此功能的规格为import_data_3(integer,timestamp with time zone,timestamp with time zone,integer)

因为你收到了错误

  

数字类型的输入语法无效:" N / A"

这很可能意味着第一个参数" import"或者最后一个" is_l"包含值" N / A"。尝试调试函数data_import_all的调用代码,看看如何生成这两个参数值。