Struchkov Mark
2beb7b3121
All checks were successful
continuous-integration/drone/push Build is passing
30 lines
2.0 KiB
Markdown
30 lines
2.0 KiB
Markdown
---
|
||
aliases:
|
||
tags:
|
||
- maturity/🌱
|
||
date: 2024-10-11
|
||
zero-link:
|
||
parents:
|
||
linked:
|
||
---
|
||
При создании внешнего ключа в базе данных важно не забывать добавлять индекс на связанный столбец.
|
||
|
||
Внешний ключ обеспечивает связь между двумя таблицами, гарантируя, что значения в одном столбце соответствуют значениям в другой таблице. ==При выполнении операций, таких как SELECT, UPDATE или DELETE, СУБД должна проверить целостность данных. Без индекса проверка становится затратной по времени, так как приходится сканировать всю таблицу для поиска нужных записей==. Индекс решает эту проблему, значительно ускоряя поиск и проверку данных.
|
||
|
||
Рассмотрим пример, где мы удаляем строку из таблицы. Поиск записи в таблице происходит быстро, так как удаление выполняется по первичному ключу. Однако, у нас есть связь с другой таблицей, и ==самый долгий этап это проверка связей с этой таблицей.==
|
||
|
||
![600](../../meta/files/images/Pasted%20image%2020240331093028.png)
|
||
***
|
||
## Мета информация
|
||
**Область**:: [[../../meta/zero/00 Базы Данных|00 Базы Данных]]
|
||
**Родитель**:: [[Производительность SQL запросов]]
|
||
**Источник**::
|
||
**Создана**:: [[2024-10-11]]
|
||
**Автор**::
|
||
### Дополнительные материалы
|
||
-
|
||
|
||
### Дочерние заметки
|
||
<!-- QueryToSerialize: LIST FROM [[]] WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link) -->
|
||
|