On Thu, Feb 8, 2018 at 8:12 PM, Steven Hirsch <snhirsch@xxxxxxxxx> wrote: ..... > 2. Why is the currval() function being so blasted dumb? If > 'pg_get_serial_sequence' cannot resolve the sequence, it returns NULL. As > such, shouldn't the outer currval() also be returning NULL? I cannot > imagine a rationale for the current behavior. Are you sure it does ? http://sqlfiddle.com/#!17/9eecb/9696 shows it returning null. ( as expected, if it is defined strict as it should and someone has already pointed it ). Are you sure you are not using pgAdmin or a similar thing which displays null as 0 in a numeric field? Francisco Olarte.