5.7 KiB
Модель DataBaseColumn
Класс DataBaseColumn
предназначен для описания структуры отдельной колонки в базе данных. Он предоставляет подробную
информацию о характеристиках колонки, таких как тип данных, ограничения на значения, связи с другими таблицами и многое
другое.
Пространство имён
namespace goodboyalex\php_db_components_pack\models;
Автор и версия
- Автор: Александр Бабаев
- Версия: 1.0
- Дата начала поддержки: с версии 1.0
Назначение
Класс DataBaseColumn
используется для точного описания характеристик колонки в базе данных. Он позволяет указать тип
данных, длину, обязательность, уникальность, наличие первичного ключа, внешний ключ, проверку данных и прочие аспекты,
влияющие на корректную работу с базой данных.
Основные элементы класса
Поля
Поля класса DataBaseColumn
Имя поля | Тип поля | Описание |
---|---|---|
Name | string | Имя колонки в базе данных. |
Type | Tuple | Тип данных колонки, где первый элемент — тип данных (например, DBType::STRING ), второй — максимальная длина (например, 255). |
IsNotNull | bool | Признак, указывающий, разрешена ли установка значения NULL в колонку. |
IsUnique | bool | Признак, указывающий, что каждое значение в колонке должно быть уникальным. |
IsPrimaryKey | bool | Признак, указывающий, что колонка является первичным ключом. |
ForeignWith | Tuple | Внешний ключ, связанный с другой таблицей, где первый элемент — имя таблицы, второй — имя колонки. |
Check | ConditionBuilder | Контрольные условия для вносимых данных, представлены объектом ConditionBuilder . |
Default | mixed | Значение по умолчанию для колонки. Может быть любого подходящего типа данных. |
IsAutoIncrement | bool | Признак, указывающий, что значение колонки генерируется автоматически при добавлении новой записи (авто-инкремент). |
Конструктор
Позволяет задать полную конфигурацию колонки, включая имя, тип данных, ограничения и связи.
Пример использования
Допустим, у вас есть таблица пользователей, и вы хотите описать колонку с именем пользователя следующим образом:
use goodboyalex\php_db_components_pack\models\DataBaseColumn;
use goodboyalex\php_db_components_pack\enums\DBType;
// Создаём объект колонки
$column = new DataBaseColumn(
// Имя колонки
'username',
// Тип данных (строка, максимум 255 символов)
new Tuple(DBType::STRING, 255),
// Запрет пустых значений (NOT NULL)
true,
// Уникальные значения (UNIQUE)
true,
// Не является первичным ключом
false,
// Без внешнего ключа
new Tuple(null, null),
// Без проверок
new ConditionBuilder(),
// Значение по умолчанию (пустая строка)
'',
// Авто-инкремент отключён
false
);
Дополнительная информация
Класс DataBaseColumn
является мощным инструментом для детализации структуры колонок базы данных. Он предоставляет
широкие возможности для настройки различных аспектов колонки, таких как тип данных, ограничения, связи и прочее. Это
существенно облегчает работу с базой данных и способствует повышению качества проектирования моделей данных.