|
|
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
Есть простая задача, на первый взгляд: В данных фигурируют организации, у них само собой ИНН. Как создавать ключевую таблицу? 1. ИНН делать PK, но тогда как это отобразиться на объеме и быстродействии БД? Может просто генератором как обычно? 2. Какой вид данных ставить на поле ИНН Integer или Char? Поделитесь опытам как удобнее всего? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 09:03:35 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
Borr B> 1. ИНН делать PK, но тогда как это отобразиться на объеме и B> быстродействии БД? Может просто генератором как обычно? Я бы сделал суррогатный ключ на генераторе, а на поле с ИНН наложил unique constraint Borr B> 2. Какой вид данных ставить на поле ИНН Integer или Char? Ага, интежер а завтра они 20-значный ИНН сделают :) Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 09:09:30 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
вполне могут быть организации с одинаковым ИНН ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 09:10:54 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
srf2000вполне могут быть организации с одинаковым ИНН хм, всегда думал, что ИНН - уникален ссылку, пожалуйста Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 09:14:10 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
вообще то ИНН отдельно нахер никому не нужен, разве что в платежке, и то все равно вместе с КПП. поэтому например 1С хранит ИНН и КПП как ДВА реквизита В ОДНОМ поле, разделенные символом /. И никто до сих пор не пострадал :-) ты бы предметную область подизучил, прежде чем ее автоматизировать. А то сразу "ИНН! Первичный ключ! Генератор!". ИНН даже как unique всем до лампочки. Вот есть ОГРН - который да, уникальный. И т.д. и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 09:16:16 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас srf2000вполне могут быть организации с одинаковым ИНН хм, всегда думал, что ИНН - уникален ссылку, пожалуйста Posted via ActualForum NNTP Server 1.3 Уникален то уникален, но бывают филиалы с другим адресом, названием и одинаковым ИНН с головной конторой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 09:17:23 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас srf2000вполне могут быть организации с одинаковым ИНН хм, всегда думал, что ИНН - уникален ссылку, пожалуйста Posted via ActualForum NNTP Server 1.3 ну например филиалы, подразделения и головное головное предприятие могут иметь одинаковый ИНН. ссылки лень искать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 09:18:13 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
авторты бы предметную область подизучил, прежде чем ее автоматизировать. А то сразу "ИНН! Первичный ключ! Генератор!". Дело в том что я не с бухгалтерами работаю им КПП до лампочки. А данные не надо выводить типа ИНН/КПП - тогда каждый раз разделять строчку, зачем мне эта головная боль. Карабас Барабас Спасибо я так и сделал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 09:40:07 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
При постановке на учет в другой налоговый орган ИНН не изменяется, а изменяется КПП. Если и делать ключ, то по двум полям - ИНН+КПП. И то это имеет смысл лишь в случае, что это реестр организаций, и двух записей с одинаковыми реквизитами в этой таблице быть не может. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 10:03:59 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
И еще: ИНН вида 8901хххххх не поместится в тип Integer (или я не прав?..) А у физических лиц ИНН 12-значный - ну разве что его Int64 делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 10:07:36 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
авторИ еще: ИНН вида 8901хххххх не поместится в тип Integer (или я не прав?..) А у физических лиц ИНН 12-значный - ну разве что его Int64 делать. Тоже верно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 10:43:51 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
Borr авторты бы предметную область подизучил, прежде чем ее автоматизировать. А то сразу "ИНН! Первичный ключ! Генератор!". Дело в том что я не с бухгалтерами работаю им КПП до лампочки. А данные не надо выводить типа ИНН/КПП - тогда каждый раз разделять строчку, зачем мне эта головная боль. Карабас Барабас Спасибо я так и сделал. а что за боль то? если firebird напиши UDF и им дели прям в процедуре... малоли где потом понадобится ;) сделай универсально, это не требует тут каких-то мега трудозатрат, а геороя в дальнейшем можно будет избежать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 11:51:21 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
zothа что за боль то? если firebird напиши UDF и им дели прям в процедуре... малоли где потом понадобится ;) сделай универсально, это не требует тут каких-то мега трудозатрат, а геороя в дальнейшем можно будет избежатьКак раз геморроя (как и прочих ЛузерДефайнедФанкшнз) позволит избежать хранение ИНН / КПП в отдельных полях. А клеить их в одну строку можно и полем calculated. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 12:01:52 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
авторпозволит избежать хранение ИНН / КПП в отдельных полях. А клеить их в одну строку можно и полем calculated. у Borr вроде как не бухгалтерия, поэтому ему не надо. а для бухгалтерии разделение ИНН и КПП на отдельные столбцы не является важным. В 1С исторически был только ИНН, потом указание КПП в платежках стало обязательным для некоторых случаев, поэтому КПП ввели как "аппендикс". Если бы сделали отдельным столбцом - ничего с точки зрения клиента это бы не поменяло. Поэтому udf необязательна, а если и нужна, то легко делается из той же самой функции которой комбинированный ИНН-КПП обрабатывался бы на клиенте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 12:13:16 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
WildSery zothа что за боль то? если firebird напиши UDF и им дели прям в процедуре... малоли где потом понадобится ;) сделай универсально, это не требует тут каких-то мега трудозатрат, а геороя в дальнейшем можно будет избежатьКак раз геморроя (как и прочих ЛузерДефайнедФанкшнз) позволит избежать хранение ИНН/КПП в отдельных полях. А клеить их в одну строку можно и полем calculated. а ну да... я просто изходил из того что уже имеется структура, не ругайся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 12:21:18 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
zothя просто изходил из того что уже имеется структура, не ругайсяТы о чём? Никакой ругани, только обсуждение. Я стараюсь UDF использовать только в крайнем, действительно необходимом случае. А если можно заменить "родной" конструкцией, иногда даже выглядящей как бред, то и тогда только после тестов скорости выполнения в сравнении. ЗЫ: Вывести меня из себя (до ругани) практически невозможно даже нашим юзерам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 12:30:10 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
WildSery[quot zoth] ЗЫ: Вывести меня из себя (до ругани) практически невозможно даже нашим юзерам. ну или вопросами про абц ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2006, 13:24:22 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
Пару правил: При работе с ИНН не забываем проверять контрольную сумму. При 12 значном ИНН - КПП д.б. пустым. -- Dik76 Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2006, 00:29:43 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
MazoHistИ еще: ИНН вида 8901хххххх не поместится в тип Integer (или я не прав?..) А у физических лиц ИНН 12-значный - ну разве что его Int64 делать. Не знаю как в русских, но в украинских ИНН могут быть ведущие нули, причем значащие. Потому, если ты надумал хранить его как число - то потом придется застрелиться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2006, 14:17:23 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
x.diablo MazoHistИ еще: ИНН вида 8901хххххх не поместится в тип Integer (или я не прав?..) А у физических лиц ИНН 12-значный - ну разве что его Int64 делать. Не знаю как в русских, но в украинских ИНН могут быть ведущие нули, причем значащие. Потому, если ты надумал хранить его как число - то потом придется застрелиться. зачем стреляться? неужели трудно приписать нули спереди? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2006, 14:27:52 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
x.diabloНе знаю как в русских, но в украинских ИНН могут быть ведущие нули, причем значащие.И что, нулей впереди может быть разное количество, и это будут разные ИНН? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2006, 14:46:39 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
WildSery W> И что, нулей впереди может быть разное количество, и это будут разные W> ИНН?наверное там в одноричной системе Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2006, 14:48:15 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
Карабас Барабаснаверное там в одноричной системе ну да всё равно, можно преобразовать и хранить только число цифр. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2006, 14:52:48 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
Тоже хотел изменить тип с varchar(12) на bigint, но: 1. Таблица - справочник организаций 2. ИНН и КПП храню в разных колонках. 3. В списке есть и ЮЛ и ИП ИНН у которых 10 и 12 цифр соответственно Что имеем: ИНН у меня - первичный ключ. Если будет филиал - будет бяка. Пока их нет и не планируется, но если уж переделывать, то надо учесть. x.diabloНе знаю как в русских, но в украинских ИНН могут быть ведущие нули, причем значащие. Потому, если ты надумал хранить его как число - то потом придется застрелиться. Та же тема. Но не все так печально. Дописать нули в ответе можно таким запросом Код: sql 1. 2. 3. 4. 5. 6. Но проблема не решена. Я думаю, что ноль в начале может быть только один как у ЮЛ так и у ИП. То есть не может быть ИНН у ИП с тремя нолями впереди. А это решает задачу, но раздувает запрос. ИНН у меня primary key в таблице - справочнике и имеет много связей с другими таблицами. Как то вот все же хочется хранить цифры как число а не как текст. Но тут надо даже не беря во внимание филиалы, определиться что проще. Хранить как varchar(12) или дорисовывать нули при запросе. Делать в такой таблице суррогатный ключ мне совершенно не хочется, т.к. связка двух колонок ИНН и КПП в справочнике фирм - дело уникальное. А суррогатный ключ не будет использоваться ни для чего. Индексы, запросы, сортировка, чтение, правка - он нафиг не нужен! Единственное что можно сделать, это связи с другими таблицами по нему. Но зачем? Там тоже есть ИНН которым сейчас все и связывается. Как итог пока скажу так: С типом varchar(12) На небольшой базе со справочником фирм в 5000 записей и несколькими связанными журналами по 50'000 записей, все летает. Необходимости в оптимизации вообще нет. Но если можно лучше, почему бы это не сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2014, 17:24:35 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
BagirИНН у меня - первичный ключССЗБ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2014, 17:35:50 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
ССЗБ - Компьютерный сленг? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2014, 17:44:01 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
да. означает "Человек самостоятельно сделал глупость, которая принесет ему проблемы". СамСебеЗлобныйБуратино. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2014, 18:11:44 |
|
||
|
ИНН и вид данных
|
|||
|---|---|---|---|
|
#18+
BagirЯ думаю, что ноль в начале может быть только один как у ЮЛ так и у ИП ноль в начале ИНН может быть только если первые две цифры содержат ноль. Незначащих нулей впереди нет. Кроме того, ИНН это "составное число", поэтому хранить его как bigint теоретически можно, но неудобно из-за того самого вероятного ведущего ноля. И, да, ИНН может поменяться, если юр-физ лицо переедет в другую налоговую (насколько я понимаю). Поэтому ИНН первичным ключом быть не может. На роль ПК может претендовать разве что ОГРН. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2014, 19:33:48 |
|
||
|
|

start [/forum/topic.php?all=1&fid=40&tid=1563791]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
154ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 182ms |
| total: | 409ms |

| 0 / 0 |
