
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
21.06.2004, 09:06:27
|
|||
|---|---|---|---|
Удаление записи |
|||
|
#18+
Привет. Можно ли как нибудь проверить, можно ли удалить запись из таблицы. Т.е. запись таблицы может являться вторичным ключем к др. таблице. При удалении записи выдыется ошибка типа: ERROR: update or delete on "programs" violates foreign key constraint "$2" on "major_code_info" DETAIL: Key (progid)=(1) is still referenced from table "major_code_info". Как сделать такую проверку??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.06.2004, 15:22:18
|
|||
|---|---|---|---|
Удаление записи |
|||
|
#18+
Проверяй наличие обычным SELECT'ом. Как вариант связанные поля можно объявлять с действием по-умолчанию на случай удаления или обновления, типа REFERENCES ... ON DELETE SET NULL; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.06.2004, 08:42:05
|
|||
|---|---|---|---|
Удаление записи |
|||
|
#18+
Установка значения в null при удалении не нужна, поскольку произойдет потеря данных. Необходимо при удалении проверить возможность удаления и если запись используется в других таблицах, надо получить список таблиц(и по возможности строк) в которых использеутся удаляемая запись. Т.е. переложить все на клиента, чтобы юзеры самостоятельно освобождали связи(как пример в 1С). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=53&mobile=1&tid=2007803]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
190ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 212ms |
| total: | 504ms |

| 0 / 0 |
