I wrote a function which generates SQL statements for INSERTs and UPDATEs, in which I cast the values to the correct datatype. Now I want to catch ERROR: invalid input syntax for integer: "i" but although I tried quite a few I can't find the right error code for this exception. Is it possible that this error can not be caught? Thanks Leo
Rainer Leo <leo@workfile.de> writes:
> Now I want to catch
> ERROR: invalid input syntax for integer: "i"
> but although I tried quite a few I can't find the right
> error code for this exception.
Crank up the error reporting verbosity. For instance, in psql
regression=# select 'i'::integer;
ERROR: invalid input syntax for integer: "i"
regression=# \set VERBOSITY verbose
regression=# select 'i'::integer;
ERROR: 22P02: invalid input syntax for integer: "i"
LOCATION: pg_atoi, numutils.c:84
regression=#
A look in Appendix A of the manual shows that 22P02 is
INVALID TEXT REPRESENTATION
regards, tom lane
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера