Armin.Engineer Ответов: 1

Первичный ключ или другой столбец для лучшего способа


Hi,

I have a table that is about title of invoice , 
i have a primary key that starts from 1 for my invoice i need a special number , i mean every invoice must have special number ,now tell me which one is more reasonable ?
you think if i add a column and name it SpecialNumber and with it give the numbers to my invoice titles ?
or i should use primary key?

It must be like that go up one by one ,
and sometimes start might change somewhere.

For example:

1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , ( I will change it ) , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57


Что я уже пробовал:

Мне нужно найти лучший способ и я еще ничего не нашел

1 Ответов

Рейтинг:
0

OriginalGriff

Вообще говоря, налоговые органы не любят видеть пробелы в номерах счетов-фактур: они склонны подозревать, что вы скрываете от них данные (а значит, и деньги, которые они могли бы насильно изъять из вашего кармана).

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


Richard Deeming

Единственная проблема со столбцом идентификаторов заключается в том, что вы можете все еще закончите с пробелами, если у вас есть неудачная вставка или транзакция, которая откатывается.

В зависимости от версии SQL вы также можете столкнуться с большими пробелами при каждом перезапуске сервера, если только не добавите специальный флаг трассировки:
Отказоустойчивость или перезапуск приводят к повторному заполнению идентификатора[^]