Сессия — это механизм для сохранения информации на разных веб-страницах для идентификации пользователей при навигации по сайту или приложению. Сессия PHP представляет собой способ хранения информации в переменных сессии, которые могут быть использованы для аутентификации на нескольких веб-страницах. В отличие от куков, информация сессии не хранится на компьютере пользователя. Вместо этого сессия создает файл на сервере во временном каталоге.
Просмотреть содержимое сессии можно в суперглобальном массиве $_SESSION.
Составной ключ — это ключ, состоящий из двух или более столбцов в базе данных SQL. Он используется для идентификации уникальных строк в таблице и обеспечивает порядок сортировки.
Создание составного ключа
Для создания составного ключа в SQL необходимо указать несколько столбцов при определении таблицы и добавить к ним ограничение уникальности. Например, следующий код создаст составной ключ для таблицы «users», используя столбцы «id» и «email»:
Избыточность памяти. Индексы потребляют дополнительную память для хранения информации о значениях индексируемых столбцов. При наличии большого количества индексов или индексов на больших таблицах это может привести к значительному расходу памяти.
Индексирование баз данных — это техника, повышающая скорость и эффективность запросов к базе данных. Она создаёт отдельную структуру данных, сопоставляющую значения в одном или нескольких столбцах таблицы с соответствующими местоположениями на физическом накопителе, что позволяет базе данных быстро находить строки по конкретному запросу без необходимости сканирования всей таблицы. Применяются разные типы индексов, однако они занимают пространство и должны обновляться при изменении данных. Важно тщательно продумывать стратегию индексирования базы данных и регулярно её оптимизировать.
Внешний ключ (foreign key) — это один или несколько столбцов в таблице, которые ссылаются на первичный ключ в другой таблице. Основное назначение внешних ключей — обеспечить целостность данных в связанных таблицах. Внешний ключ не позволит добавить строку, если не найдет связанного значения первичного ключа в родительской таблице. А также не даст удалить или изменить строку, на которую имеются ссылки. Как правило, внешний ключ указывает на первичный ключ из связанной главной таблицы, но это необязательно должно быть непременным условием.