|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.05.2011, 19:25 | #1 |
Регистрация: 20.05.2011
Сообщений: 6
|
Сортировка кода в таблице после удаления
у меня такая проблема, есть база , есть таблицы, в каждой таблице я использую автоматическое добавление кода " программным путем"
вот пример: <<<(procedure TDM_uchet.Tl_klient_avtoAfterInsert (DataSet: TDataSet); begin Tl_klient_avtokod_avto.value:=DM_uc het.Tl_klient_avto.RecordCount + 1 ; end>>> добавляет отлично , но есть косяг, допустим у меня есть 3 записи, я добавляю еще 1(код_авто:=количество записей +1 ). В сумме у меня 4 записи , у четвертой(4) записи код равен 4. И вот начинается сам косяг , я удаляю третюю(3) запись , потом сразу добавляю еще одну(1) запись, и получается она опять присваивает код 4, но у меня такой уже есть и выводится ошибка о повторном вводе ключа. Что делать , может кто предложит какую нибудь сортировку программным путем , либо другое добавление код_авто. |
20.05.2011, 20:13 | #2 |
Пользователь
Регистрация: 20.03.2011
Сообщений: 29
|
Делай либо тип поля счётчик, или запросом находи мах и к нему прибавляй 1, а не к кол-ву записей
|
20.05.2011, 20:15 | #3 |
!=
Участник клуба
Регистрация: 08.09.2008
Сообщений: 1,751
|
Во первых код нужно оформлять тегом code (решетка)
по существу, в разных БД подход свой, но суть одна, для идентификатора записи в основном используют (автоинкремент), это числовое поле в котором каждое значение уникально, подход зависит от БД(гдето используется триггер и генератор, гдеето есть счетчики). |
20.05.2011, 20:45 | #4 |
Регистрация: 20.05.2011
Сообщений: 6
|
во первых база Access , во вторых у меня в задание указано что нельзя в базе делать поле счетчик , а в третих как найти мах из значений в таблице?
|
20.05.2011, 21:30 | #5 |
Пользователь
Регистрация: 20.03.2011
Сообщений: 29
|
Код:
|
20.05.2011, 21:57 | #6 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
select count() заменить на select max(код)
при определении нового кода надо брать не число записей(count) а макисальный номер (max(код))
программа — запись алгоритма на языке понятном транслятору
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
После удаления перестали работать стили | mrgrudge | PHP | 3 | 01.12.2010 13:35 |
Создание пользователя, после его удаления | Droid | БД в Delphi | 0 | 21.05.2010 00:39 |
Сохранение файла после изменения/удаления записи (Delphi) | Kurai | Помощь студентам | 2 | 15.05.2010 23:21 |
Очищение DateTimePicker после удаления записи | Droid | БД в Delphi | 9 | 21.10.2009 15:57 |
Очистка формата после удаления макроса | valerij | Microsoft Office Excel | 2 | 14.06.2008 12:00 |