# Атрибут `AutoIncrement` Атрибут `AutoIncrement` используется для пометки полей в моделях данных, которые будут автоматически заполняться уникальным значением при каждом новом сохранении записи. Обычно он применяется для идентификации уникальных записей, таких как первичные ключи. ## Основное назначение Этот атрибут необходим для того, чтобы отметить поля, значения которых не задаются вручную, а генерируются автоматически самой базой данных при вставке нового элемента. Например, если поле объявлено как автоинкрементируемое (AUTO_INCREMENT в MySQL, SERIAL в PostgreSQL), то именно этот атрибут поможет разработчику ясно выразить намерение, что такое поле само получает уникальный идентификатор. ## Пример использования атрибута Предположим, у вас есть простая модель данных, описывающая пользователей, где каждое поле соответствует столбцу в базе данных: ```php use goodboyalex\php_db_components_pack\attributes\AutoIncrement; final class User { #[AutoIncrement] private int $Id; private string $Name; private string $Email; // ... } ``` Здесь атрибут `#[AutoIncrement]` указывает, что поле `$Id` будет автоматически получать уникальные значения при создании новых записей. ## Пространство имён Атрибут объявлен в пространстве имён: ```php namespace goodboyalex\php_db_components_pack\attributes; ``` ### Версии и автор - **Автор**: Александр Бабаев - **Версия**: 1.0 - **Дата выпуска**: с версии 1.0 ### Особенности - **Только для свойств (fields)** Атрибут применим исключительно к свойствам классов, которые представляют собой поля базы данных. ### Когда использовать атрибут? Атрибут `AutoIncrement` рекомендуется использовать в случаях, когда важно подчеркнуть автоматическое поведение поля при вставке новых записей в базу данных. Особенно это актуально для идентификационных полей, таких как первичные ключи, где обеспечение уникальности критично для целостности данных. [На главную](../../index.md)