积极答复者
гарантирует ли sequence соблюдение последовательности?

问题
答案
-
Я имел в виду, если одно и то же значение добавляется например в три таблицы сразу, то есть ли двойники во всех трех или, например, только в одной.
В любом случае с моей точки зрения двойников быть не должно. Но всегда возможны какие либо ошибки, как в софте, так и в железе.
Если это проблема которая должна быть решена, то возможное варианты мы уже обсудили.
This posting is provided "AS IS" with no warranties, and confers no rights.
- 已标记为答案 Petko KrushevMicrosoft contingent staff, Moderator 2022年9月5日 11:28
-
Sequence прямого отношения к таблицам не имеет, это просто источник последовательности. Если на самой таблице нет нужных ограничений, то никто не помешает вам добавлять одинаковые значения намеренно или из за ошибки.
Далее, sequence может быть настроена произвольным образом, например на выдачу последовательности 1,2,3... Значение в этом случае будет повторяться.
Если вам требуются уникальные значения, то наверное следует сделать это на самой таблице, например используя identity.
This posting is provided "AS IS" with no warranties, and confers no rights.
- 已标记为答案 Petko KrushevMicrosoft contingent staff, Moderator 2022年9月5日 11:28
全部回复
-
Sequence прямого отношения к таблицам не имеет, это просто источник последовательности. Если на самой таблице нет нужных ограничений, то никто не помешает вам добавлять одинаковые значения намеренно или из за ошибки.
Далее, sequence может быть настроена произвольным образом, например на выдачу последовательности 1,2,3... Значение в этом случае будет повторяться.
Если вам требуются уникальные значения, то наверное следует сделать это на самой таблице, например используя identity.
This posting is provided "AS IS" with no warranties, and confers no rights.
- 已标记为答案 Petko KrushevMicrosoft contingent staff, Moderator 2022年9月5日 11:28
-
Если погрузится в детали, есть процедура, где примерно такой код:
select @id= NEXT VALUE FOR contacts_seq; insert into t (id,....) values (@id,...)
Никто и ничто, кроме процедуры, не мог добавить данные, я уверен т.к. на таблице есть аудит.
identity не используется намеренно, последовательность используется для нескольких таблиц. Понятно, чтоб избежать дублей нужно создать ключ, но тут вопрос скорее теоретический, а ни как нормализацию соблюсти.
-
Я имел в виду, если одно и то же значение добавляется например в три таблицы сразу, то есть ли двойники во всех трех или, например, только в одной.
В любом случае с моей точки зрения двойников быть не должно. Но всегда возможны какие либо ошибки, как в софте, так и в железе.
Если это проблема которая должна быть решена, то возможное варианты мы уже обсудили.
This posting is provided "AS IS" with no warranties, and confers no rights.
- 已标记为答案 Petko KrushevMicrosoft contingent staff, Moderator 2022年9月5日 11:28