-
触发器是数据库后台的对象,不能直接与前台应用程序交互! 它也没有参数。
不是没有解决方案,虽然我不推荐(因为触发器是用来保证数据一致性的,业务逻辑不应该包含在其中,这样会影响效率,而且没有标准化,还有很多其他问题)。
该方法的思想是:首先,前台程序将要使用的参数值保存到数据表中,并可能添加一些额外的信息,以确保触发器在运行时可以准备好获取该值; 然后向触发器添加一条语句,是否需要读取此数据,并根据需要提取此数据。
唉,听我哥哥说,最好不要在触发器上这样做,让我们考虑其他解决方案。
-
触发器在特定时间自动运行。
我不认为你可以向它传递论据。
-
触发器写好了,为什么需要参数?
只要在与触发器关联的数据表发生变化时自动触发,程序就应该能够获取触发信息。
-
你的触发器......
是否要在插入积分时更新积分?
那么它如何在你面前。
create trigger tr_integral_grade on integrals
for update -- 这里应该是 insert。
并且不要对同一个表使用触发器。
当您将插入插入积分(积分标记,积分 id,积分等级)值(@integral标记,(cast(right(@integral mark 150,2) as int)+1),@id) 时,您可以做到。
由于插入时可以得到@integral标记,因此您可以自然而然地获得它。
cast(right(@integral mark 150,2) as int)+1Ah,触发器保存。
-
这和普通的T-SQL语句没什么区别,因为触发器的业务逻辑是在表对象中执行的,也就是在数据库内部),c是上一层的接口,不需要关心基表的触发器是如何执行的。真正关心的应该是DBA或程序员。
-
触发器的定义:
触发器是一种特殊类型的存储过程。 触发器主要由事件触发,并自动调用和执行。 另一方面,可以通过存储过程的名称来调用存储过程。
触发器存在的意义在于它可以在没有操作员注意的情况下“自动”执行。
例如,如果我们有表 A 和表 B,我们想添加、删除或修改表 A 中的一行,表 B 中对应的行会随着 A 的变化而变化,在这种情况下会使用触发器。
但是一旦写入触发器,它就会存储在 sqlserver 上,每次我们转到表 a 时,触发器都会自行工作(更新表 b)。 无需执行其他操作。
所以,在你写完触发器之后,你只需要注意你的SQL语句,你不需要调用它,我们需要主动调用的是存储过程,它相当于SQL Server中的函数,并提供了一个接口,比如一个名为@mytran)的trans。
调用时。
sqlcommand cmd = new sqlcommand(sql, conn);
将命令执行类型更改为存储过程模式,默认为文本模式。
then 或 excutesclar 等,就像普通的 SQL 语句一样。
首先设置任务变量。 然后:
触发器 1(初始打开):输入村民的范围 - 领取任务,打开触发器 2 触发器 2(初始未打开):进入井周围,取水成功,打开触发器 3 触发器 3(初始未打开): >>>More