|
|
|
Автозаполнение
|
|||
|---|---|---|---|
|
#18+
Дамы и господа, у меня есть вопрос. Ситуация такова. В таблице есть поле CODE и какие-нить другие много-много. Очевидно, что CODE будет уникальным и как бы сам инкрементироваться. В процессе эксплуатации записи будут удаляться, а вот поле CODE хотелось бы иметь возможность иногда (хотя бы по команде, если не автоматически) упорядочивать. Я имею ввиду пронумеровать все записи по порядку в поле CODE и при этом, естесственно, не потерять целостность, т.е. в связанных таблицах внести соответствующие корректировки (т.к. ясен барабан по этому полю таблица связана с другими). Можно ли это сделать автоматически? (Если я не ошибаюсь, то MS Access позволяет так извращаться.) Ну очень не хочется делать этого в рукопашную... Заранее благодарю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 05:08 |
|
||
|
Автозаполнение
|
|||
|---|---|---|---|
|
#18+
Можно. Посмотри в HELP по свойству поля AutoIncrement и функции GETAUTOINCVALUE С уважением, Алексей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 07:30 |
|
||
|
Автозаполнение
|
|||
|---|---|---|---|
|
#18+
В принципе сделать можно. Для этого надо: -) Ни в коем случае не использовать Integer-Autoincrement, поскольку такие поля по определению Read-Only. Необходимо написать собственную функцию Default для этих ключевых полей. Ищи на этом форуме по ключевому слову "NewId" -) Настроить Referential Integrities на Update по типу Cascade для связанных таблиц Но вообще-то, этого делать не надо. Назначение ключевого поля - это однозначная идентификация записи. Все! Какое при этом оно имеет конкретное значение - не играет никакой роли. Главное, точбы оно было уникальным. Если требует добавить какие-то еще функции, то вводи дополнительные поля. Насколько я понимаю, цель данной перенумерации - это простое упорядочивание записей. Ну и введи для этой цели дополнительное НЕ ключевое поле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 10:20 |
|
||
|
Автозаполнение
|
|||
|---|---|---|---|
|
#18+
Hi Владимир! > Но вообще-то, этого делать не надо. В общем и целом согласен :) > Назначение ключевого поля - это однозначная идентификация записи. Все! > Какое при этом оно имеет конкретное значение - не играет никакой роли. > Главное, точбы оно было уникальным. Иногда может возникнуть другая проблема - переполнение разрядной сетки ( например очень большая интенсивность операций вставки/удаления записей) - и в конце концов мы выйдем за допустимый диапазон значений Integer поля - именно тогда и придётся сделать глобальную перенумерацию и переставить "счётчик" на новый Max - но это умозрительная ситуация - если уж не хватает 2 с лишком миллиардов номеров, то видимо стоит подумать о чём-то посерьёзнее dbf-ов... Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2006, 18:24 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33813056&tid=1591336]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 202ms |
| total: | 323ms |

| 0 / 0 |
