Hi *, both 2.5.7 and 3.0.3 have same behavior, so it's probably expected. But still, looks wrong to me (in such case educate me).
SQL> create table foobar (id int primary key, foo int, bar generated always as (foo+1)); SQL> insert into foobar values (1, 1); SQL> update foobar set foo = 2 where id = 1 returning bar; BAR ===================== 3 SQL> update foobar set foo = 2 where id = -1 returning bar; BAR ===================== <null> SQL> The second update did not update any records, yet it still returns one row in result with NULL value. Shouldn't it return empty result set? With this I don't know whether the RETURNING returns NULL as a new value or nothing was updated. I would have to go to PSQL and use ROW_COUNT or something like that. -- Mgr. Jiří Činčura https://www.tabsoverspaces.com/ ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel