可以重复应用并产生相同结果的数据库操作?

时间:2008-12-23 02:24:54

标签: database computer-science set-theory

我正在画一个空白,或者正如某些人所说,有一个高级时刻。我知道这个概念的正式定义和名称,如果重复运行,在数据库中运行的db操作(存储过程)将产生相同的结果。

这是数学家反身,对称,传递等类型的东西。

5 个答案:

答案 0 :(得分:14)

你的意思是“确定性的” - 如果使用相同的输入调用,总会返回相同的结果吗?

或者“idempotent”,这也意味着再次调用该函数将不会对数据库产生进一步的效果

答案 1 :(得分:11)

IT称为幂等

答案 2 :(得分:7)

我认为你所寻找的是幂等。 Idempotence是一个可以应用于任何类型的操作(不仅仅是数据库)的属性。这意味着多次执行操作不止一次就相当于只执行一次。即第一次离开状态后的每一次后续操作。

例如,大多数DVD遥控器上的播放按钮在播放视频时都是幂等的,因为无论您按下它多少次,它都会继续播放。但是,遥控器上的电源按钮通常不是幂等的,因为它每次都会打开和关闭机器。 Idempotence是一个不错的属性,因为在尝试生成给定状态之前,您并不总是必须知道系统处于什么状态。

答案 3 :(得分:1)

或者也许是确定性的。

答案 4 :(得分:1)

我很确定你正在考虑“确定性”的工作。如果函数始终为相同的输入返回相同的答案,则该函数是确定性的。如果函数可以为同一输入返回不同的答案,则该函数是不确定的。