Chen1996-1 2021-11-19 18:02 采纳率: 0%
浏览 21

postgresql 函数 插入命令 包含变量的问题

上代码吧

CREATE OR REPLACE FUNCTION "public"."copy_to_self_copy"()
  RETURNS "pg_catalog"."trigger" AS $BODY$ 
  declare copy_name varchar(255);
BEGIN
    copy_name = TG_TABLE_SCHEMA || '.' || TG_TABLE_NAME ||'_copy';
    insert into copy_name  values (new );
    return new;
END$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100

我希望达到,这种效果,当 名为”a" 的表中 插入一条数据后, 他会在“a_copy” 的表中 同样插入一条数据。
我就把变量放在了 insert into [ 变量] values( new);

这样,这个不能识别 这个变量,直接把他当作 copy_name 了。

另一种方式


CREATE OR REPLACE FUNCTION "public"."copy_to_self_copy"()
  RETURNS "pg_catalog"."trigger" AS $BODY$ 
  declare copy_name varchar(255);
BEGIN
    copy_name = TG_TABLE_SCHEMA || '.' || TG_TABLE_NAME ||'_copy';
    Execute 'insert into '|| copy_name ||'  values '||new;
    return new;
END$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100

我把 他转成 字符串拼接的,但是问题又出现了, new 这个东西, 不能 解析成 本身的数据类型。

  • 写回答

2条回答 默认 最新

  • CSDN专家-Time 2021-11-19 18:14
    关注

    你把new 写成字符串 可以吗。

    评论

报告相同问题?

问题事件

  • 创建了问题 11月19日

悬赏问题

  • ¥15 java代码写在记事本上后在cmd上运行时无报错但又没生成文件
  • ¥15 关于#python#的问题:在跑ldsc数据整理的时候一直抱这种错误,要么--out识别不了参数,要么--merge-alleles识别不了参数(操作系统-linux)
  • ¥15 PPOCRLabel
  • ¥15 混合键合键合机对准标识
  • ¥100 现在不懂的是如何将当前的相机中的照片,作为纹理贴图,映射到扫描出的模型上
  • ¥15 魔霸ROG7 pro,win11.息屏后会显示黑屏,如图,如何解决?(关键词-重新启动)
  • ¥15 有没有人知道这是哪里出了问题啊?要怎么改呀?
  • ¥200 C++表格文件处理-悬赏
  • ¥15 Windows Server2016本地登录失败
  • ¥15 复合卡卡号轨道写入芯片卡