Операции с базой данных, которые могут применяться неоднократно и давать одинаковые результаты? - PullRequest
8 голосов
/ 23 декабря 2008

Я рисую бланк, или, как некоторые сказали бы, имея старший момент. Я знаю, что есть формальное определение и название для концепции, где операция db (хранимая процедура), которая выполняется в базе данных, даст те же результаты, если она будет выполняться повторно.

Это что-то в жанре математики рефлексивное, симметричное, переходное и т. Д.

Ответы [ 5 ]

14 голосов
/ 23 декабря 2008

Вы имеете в виду «детерминистический» - поскольку in всегда будет возвращать один и тот же результат, если вызывается с одним и тем же входом?

Или, может быть, " idempotent ", что также означает, что повторный вызов функции больше не будет иметь эффекта для базы данных.

11 голосов
/ 23 декабря 2008

это называется идемпотент

7 голосов
/ 23 декабря 2008

Я думаю, что вы ищете Идемпотент . Идемпотентность - это свойство, которое может применяться к любому виду операций (не только к базам данных). Это означает, что выполнение операции любое количество раз более одного раза эквивалентно выполнению ее один раз. То есть каждая последующая операция после первой оставляет состояние без изменений.

Например, кнопка воспроизведения на большинстве DVD-пультов управления идемпотентна при воспроизведении видео, потому что независимо от того, сколько раз вы нажимаете его, оно продолжает воспроизводиться. Однако кнопка питания на пульте дистанционного управления, как правило, не идемпотентна, поскольку она каждый раз включает и выключает машину. Идемпотентность - это хорошее свойство, потому что вам не всегда нужно знать, в каком состоянии находится система, прежде чем запускать операцию, чтобы попытаться создать данное состояние.

1 голос
/ 23 декабря 2008

Я почти уверен, что вы думаете о работе "Детерминист". Функция является детерминированной, если она все время возвращает один и тот же ответ для одних и тех же входных данных. Функция является недетерминированной, если она может возвращать разные ответы для одного и того же ввода.

1 голос
/ 23 декабря 2008

Или, возможно, детерминированный.

...