![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 01.08.2008
Сообщений: 383
|
![]()
как сделать скользящую нумерацию внутри каждого пользователя и даты (как добавить поле № Документа)?
![]() Код:
Последний раз редактировалось kate158; 15.02.2012 в 15:08. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
identyty для NUMBER_DOC не получится однозначно. Делайте ключевое поле отдельное, если оно нужно. Здесь кстати можно использовать составной уникальный ключ из двух полей ID_USER и NUMBER_DOC. Но забота о содержимом этих полей в любом случае ложится на плечи программиста
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 01.08.2008
Сообщений: 383
|
![]()
нельзя сделать составной ключ из двух полей. один пользователь за один день может добавить несколько документов.
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
И программа должна позаботиться при этом, чтобы в рамках одного пользователя номер документа был уникален
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 01.08.2008
Сообщений: 383
|
![]()
блин! кажется я спросила об этом в первом посте!
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Если средствами SQL, то в триггере на вставку определить максимальный номер существующих документов конкретного пользователя и присвоить во вставляемой записи номер на 1 больше. Если программно, то тоже самое, только средствами DELPHI.
ADD Не обратил внимание, что там еще и дата фигурирует. Тогда согласен, нельзя сделать такой составной ключ. Только независимый. А определение MAX чуть усложнится - не по пользователю, а по пользователю и дате
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 15.02.2012 в 15:41. |
![]() |
![]() |
![]() |
#7 |
Участник клуба
Регистрация: 23.04.2009
Сообщений: 1,058
|
![]()
возьмите вместо id документа uuid уникальность гарантируется
![]() или добавляете id документа из генератора на уровне СУБД
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 08.09.2010
Сообщений: 880
|
![]()
Прием то достаточно известный:
Код:
Последний раз редактировалось Прик; 16.02.2012 в 02:33. Причина: Ага, там еще по дате надо делить. Тогда так подправим... |
![]() |
![]() |
![]() |
#9 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
![]()
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 08.09.2010
Сообщений: 880
|
![]()
Да уж, вечная история: мало кто сразу говорит об используемой СУБД.
Отвечающие догадывайтесь. В правила форума хорошо бы пунктик такой вписать чтоб авторы упоминали о том в своих темах. Здесь же, говорит о СУБД функция IDENTITY. В других не встречалась (но может и есть...). |
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
скользящая нумерация | kate158 | Общие вопросы Delphi | 4 | 30.01.2012 13:30 |
Нумерация пользователей | Rimays | PHP | 3 | 08.10.2011 21:51 |
Нумерация кругов | Lifefine | Общие вопросы Delphi | 13 | 05.02.2011 22:36 |
Нумерация строк | ShnapS | БД в Delphi | 5 | 06.05.2009 20:59 |
Нумерация | BВВ | Microsoft Office Word | 1 | 23.10.2008 05:07 |