相关疑难解决方法(0)

如何在postgres函数中使用EXECUTE FORMAT ... USING

CREATE OR REPLACE FUNCTION dummytest_insert_trigger()
  RETURNS trigger AS
$BODY$
DECLARE
v_partition_name    VARCHAR(32);
        BEGIN
        IF NEW.datetime IS NOT NULL THEN
                v_partition_name := 'dummyTest';            
                EXECUTE format('INSERT INTO %I VALUES ($1,$2)',v_partition_name)using NEW.id,NEW.datetime;              
                END IF;                    
           RETURN NULL;
        END;
        $BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;
ALTER FUNCTION dummytest_insert_trigger()
  OWNER TO postgres;
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用insert插入dummyTest值(1,'2013-01-01 00:00:00 + 05:30');

但它显示错误

ERROR: function format(unknown) does not exist
SQL state: 42883
Hint: No function matches the given name and argument types. You might need to add explicit type casts.
Context: PL/pgSQL …
Run Code Online (Sandbox Code Playgroud)

format postgresql using execute

2
推荐指数
2
解决办法
3万
查看次数

标签 统计

execute ×1

format ×1

postgresql ×1

using ×1