0
我想要返回基於表名主鍵的下一個值的函數功能:創建使用執行(PLPGSQL)
CREATE OR REPLACE FUNCTION next_pk (_table varchar) RETURNS INTEGER AS $$
BEGIN
RETURN EXECUTE 'SELECT COALESCE (MAX (primary_key), 0) + 1 FROM ' || quote_ident (_table) || ' limit 1';
END;
$$ LANGUAGE plpgsql;
select next_pk ('myTable');
但它提供了以下錯誤:
ERROR: type "execute" does not exist
LINE 1: SELECT EXECUTE 'SELECT COALESCE (MAX (primary_key), 0) + 1 F...
任何線索?謝謝。
序列不支持回滾 – Caio