问题标签 [database-trigger]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
408 浏览

database - 数据库触发器不保存

我是触发器的新手。我正在尝试使用 sql server 2014 编写触发器。这是我的代码

我右键单击路径 myDataBase -> 可编程性 -> 数据库触发器中的数据库触发器,然后选择新建数据库触发器并在那里编写我的代码。但它不保存;当我再次单击数据库触发器时,没有我的触发器的迹象。我应该怎么办?

0 投票
2 回答
944 浏览

sql - 如何在插入第三个表之前使用触发器从两个表中获取日期?

我正在尝试创建一个触发器TrgDisAmount来读取PROD_NAMEPRICEPRODUCT表中读取和计算DISCOUNTAMOUNTSALES插入的每个新行的SERIALand值PCODE

这些是表格信息

笔记:

  1. 输入SERIALPCODEonly 的值,其余列应TrgDisAmount仅由触发器输入
  2. 获取DISCOUNT_RATE使用函数GetDiscount

我已经创建了从 tableGetDiscount获取的函数。DISCOUNT_RATEDISCOUNT

这是我的尝试:

当我运行该块时,它向我显示此错误:

Table_Name.Column_name用来到达特定的列。这样做合法吗?


示例输出应如下所示:

0 投票
3 回答
2146 浏览

c# - 如何使用 ADO.NET 创建数据库触发器

我正在尝试创建一个触发器,SqlCommand但我收到了错误:

关键字“触发器”附近的语法不正确

当我在 SQL Server 中复制相同的查询时,它正在成功执行。
下面是 SQL 命令的样子。

此外,在此之上,我有 SQLCommandsCREATE TABLE并且它们可以正常工作。

USE [databasename]我之前试过CREATE TRIGGER,还是不行。我删除了连接+"korisnik.KorisnikID"并取了干净的名字,但仍然无法执行它。

0 投票
1 回答
25 浏览

sql-server - 更新触发器使用的日期

我正在尝试使用来自另一个表的触发器更新一个表。我认为这将是一个非常简单的查询,但我第一次提出的查询不起作用,我不明白为什么。

添加事务时,我希望更新 Vehicle 表。如果添加dateTransaction的时间较晚dateUsed,则应对其进行更新,以便该dateUsed字段始终包含该特定车辆的最新日期。

我认为这个触发器应该可以解决问题..但它没有:

对我来说看起来不错......它应该检查所有新插入的记录并更新该dateUsed字段。如果dateTransaction是较新的,请使用那个..如果不是..使用当前的。但我似乎遗漏了一些东西,因为它没有更新到最新日期。它确实与该特定车辆的一项交易相匹配,但与最新的交易不匹配。

一个有效的查询:

所以我有一个可行的解决方案,它甚至可能会更好(没有用大插入来计时)但是它让我不知道为什么第一个它不起作用!

任何人都可以“启发我”吗?

0 投票
3 回答
92 浏览

sql - 简单的 SQL oracle 触发器

您好,我正在为我的数据库创建一个基本的 SQL 触发器。本质上,我的数据库是一个假银行系统。加载文件如下所示

使用这个数据库,我希望创建派生属性“total_loan”,它只是每个银行分行在任何给定时刻的贷款总额。(每个分行a2_bankbranch的贷款总额)

目前,我将这段代码放在一个名为 trig.sql 的单独文件中:

目前我正在努力让触发器正常工作。还有如何通过我的 load.sql 文件运行我的触发器?

0 投票
0 回答
14 浏览

database - 使用触发器将带分隔符的字符串转换为表格

再会,

我有这个字符串“Column1=value1|Column2=value2|Column3=value3|”....等等。
我想使用给定的字符串创建一个表。我将使用数据库触发器。是否可以根据字符串创建表头?还是我需要创建一个已经具有“Column1”“Column2”和“Column3”列名的表?

输出:
Column1 Column2 Column3
value1 .....value2 .....value3

我也试过这个作为功能

IF @index = 0 RETURN( LEFT(@array, CHARINDEX('|', @array) - 1) ) DECLARE @counter INT SELECT @counter = 0 WHILE @counter < @index BEGIN IF (CHARINDEX('|', @array) <> 0) SELECT @array = SUBSTRING(@array, CHARINDEX('|', @array) + 1, LEN(@array)) ELSE SELECT @array = '' SELECT @counter = @counter + 1 END IF CHARINDEX('|', @array) != 0 SELECT @array = LEFT(@array, CHARINDEX('|', @array) - 1) RETURN( @array )

所以我将它作为一个函数运行,输出是
“Column1 = Value1”

所以我认为我需要创建另一个函数,其中标题及其值可以分开,但正如我所说,我不知道是否可以不提前创建标题并将标题基于字符串。

注意:标头是固定的,因此如果无法将标头基于字符串,那没关系,但如果可能的话,那就太好了。

任何帮助表示赞赏,谢谢

0 投票
1 回答
902 浏览

oracle - pl/sql 从开始日期获取结束日期

我正在尝试创建一个触发器以validityplan表中获取值并将其添加到值中以startdate获取表中的值。我已经编写了这个触发器。enddatedblog

我的dblogplan表模式是这样的

默认情况下,列STARTDATE具有SYSDATE值。

它显示以下错误:

我是在使用错误的概念还是什么?我怎样才能做到这一点?

0 投票
2 回答
1404 浏览

oracle - 如何使用oracle中的触发器从另外两个表中插入一个表中的数据

当数据插入另外两个表(即 table_1 和 table_2 )时,我一直试图在表中动态插入数据,比如 admin 。我只能为一个表而不是多个表获得所需的输出。我如何通过在 oracle 中使用触发器来实现这一点?

0 投票
1 回答
776 浏览

sql - Oracle:触发器不起作用

我有这个触发器:

但它不起作用。你能告诉我这个触发器有什么问题吗?

这是目标表:

谢谢

0 投票
1 回答
43 浏览

sql - 从不同的表创建触发器

我有一张桌子叫M_InventoryLine

QtyEntered不能超过Available+Level_Min所以,我需要Raise Application Error在触发器中。

我试过像这样制作触发器:

但它不起作用。有什么建议可以成功触发吗?