Postgresql 在删除行之前创建触发器

2024-03-10

所以我有这两个表:

 -- Table user
 columns: id,name,surname, password,token,earnedmoney


 -- Table addlisting
 columns: id, user_fk,price,date_added

这是我的问题:我想创建一个触发器,以便当我从表 addlisting 中删除列表时,列表的价格会添加到表 user 中的“earnedmoney”列中。

有人可以帮助我吗?谢谢你!


CREATE OR REPLACE FUNCTION add_money() RETURNS trigger AS
$$BEGIN
   UPDATE "user" SET earnedmoney = earnedmoney + OLD.price
      WHERE id = OLD.user_fk;
   RETURN OLD;
END;$$ LANGUAGE plpgsql;

CREATE TRIGGER add_money
   BEFORE DELETE ON addlisting FOR EACH ROW
   EXECUTE PROCEDURE add_money();

它也可能是一个AFTER触发,那没有什么区别。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Postgresql 在删除行之前创建触发器 的相关文章

随机推荐

  • 出现 Axios 错误:拨打大量电话时连接 ETIMEDOUT

    从我的 Azure Function 进行大量调用时出现此错误 这个错误是什么意思 如何排除故障 我猜我的 TCP 套接字用完了 我真的不知道如何在功能应用程序菜单中检查它 不过 我检查了 Azure Maps API 的日志 没有错误或掉
  • git 中带有子模块的浅克隆,如何使用指向提交而不是最新提交? [复制]

    这个问题在这里已经有答案了 我知道可以使用浅层子模块 depth选项与git submodule update 但是 如果我跑 git submodule update init recursive depth 1 在我的带有多个子模块的项
  • 如何更改动态 SQL 中的序列?

    我正在尝试创建一个脚本来将数据从一个数据库迁移到另一个数据库 我当前无法做的一件事是将序列的 nextval 设置为另一个数据库中序列的 nextval 我从 user sequences 中得到了值的差异 并生成了以下动态 SQL 语句
  • 如何从 NSArray 中选择 UIImgeView

    I have UIImageView用作可拖动对象 它们位于NSArray所以 当拖动它们时它们工作得很好 但我想要的是当我拖动它们并完成拖动方法而不是将图像放在UIImageView我只想在拖动完成时将其替换为自定义图像 所以我的问题是如
  • 具有相同高度的 SwiftUI HStack 元素

    我希望两个按钮具有相同的高度 类似于Equal HeightUIKit 中的约束 不想指定框架 让 SwiftUI 处理它 但 HStack 中的元素应该具有相同的高度 按钮应具有相同的宽度和高度 并适应较长的文本并增加其框架大小 两个按钮
  • AssemblyInstaller 中的服务类型

    我想通过编程方式安装 Windows 服务example https stackoverflow com questions 1195478 how to make a net windows service start right aft
  • 在广播接收器中检测 USB - 我缺少什么?

    我的代码遗漏了一些东西 需要你的眼睛来定位 我创建了一个 USBOnReciever 广播接收器 public class USBOnReceiver extends BroadcastReceiver Override public vo
  • wc_countries - 国家选择下拉菜单 - woocommerce

    我正在努力设置一个带有默认 WooCommerce 国家和州选择下拉列表的表单 基本上 我想显示国家 地区选择 然后根据国家 地区选择显示州选择 因此 如果用户选择英国 则会显示包含州选择的新下拉列表 我到目前为止
  • 如何保留setTimeout参数值直到执行?

    我有一些在按键时执行的代码 并在用户键入时将数据保存到数据库中 我添加了一个 setTimeout 函数 前面有一个clearTimeout 因此并非用户输入的每个字符都会发送 Ajax 请求来保存数据 虽然 setTimeout 对于一个
  • 浏览器中的 HTTP PATCH 支持

    我正在为我的应用程序设计 REST 端点 并且我需要对一些端点使用 PATCH 所有支持 HTTP 1 1 的浏览器都能够支持 PATCH 吗 HTTP 1 1 没有定义PATCH method HTTP 1 1 确实为客户端和 或服务器添
  • MySQL 中的 CAST 为 DECIMAL

    我正在尝试在 MySQL 中转换为 Decimal 如下所示 CAST COUNT 1 5 AS DECIMAL 2 我正在尝试将表中的行数 乘以 1 5 转换为该点后带有两位数字的浮点数 SQL代码 SELECT CONCAT Guard
  • Boost::序列化和 MFC Doc/View 架构

    我正在移植现有的 MFC C 应用程序以对 XML 文件使用 Boost Serialization 我的 CDocument 对象包含应用程序的所有数据 我已将序列化函数实现为 template
  • 是否可以从同一包中的模块访问 __init__.py 中的变量?

    我有一个 hello1 包 其中包含 good py 模块 hello1 init py good py The init模块有一个变量A 1 我需要访问good py中的变量hello1 A import hello1 class Goo
  • 如何使用brew cask指定版本?

    安装某些东西时如何指定版本号brew cask install 对于最新版本的 Homebrew 下面是杰思罗的指示 https stackoverflow com a 58373705 8280495可能不起作用 因为我们会收到如下错误
  • 将 DateTime 值作为参数传递给 OleDbCommand

    我在将 DateTime 值作为 DbParameter 传递给查询时遇到问题 看来 DateTime 值的时间部分被剥夺了 下面是 C 中的示例代码 DbProviderFactory factory OleDbFactory Insta
  • 在 Metal Shading Language 中创建全局可访问的常量缓冲区

    我有一个关于 Metal 中的常量缓冲区的问题 假设我有类似的东西 list of includes goes here using namespace metal struct ConstantBuffer float ANY VALUE
  • 如何在我的 docker 映像中安装 python-tk [重复]

    这个问题在这里已经有答案了 当我在 docker 映像中运行 python 脚本时出现此错误 ImportError No module named tkinter please install the python tk package
  • 将 numpy 加载到 IronPython 中

    我最近安装了 Ironpython 工具 但在加载外部模块 numpy 时遇到问题 这是我的测试代码 import numpy numpy test 当编写我的简单测试时 智能感知找不到 numpy 但是当它从 vs2010 运行时 我得到
  • 将 opencv 仿射矩阵转换为 CGAffineTransform

    我想采用 OpenCV 中的仿射矩阵 Mat T getAffineTransform src pt dst pt 然后将其转换为 CGAffineTransform 以在 Core Graphics Objective C iOS 中使用
  • Postgresql 在删除行之前创建触发器

    所以我有这两个表 Table user columns id name surname password token earnedmoney Table addlisting columns id user fk price date ad