Очевидный вопрос: если pixel
всегда равно id
, зачем вам это вообще нужно?Если вы используете значение от id
в качестве начального значения по умолчанию, почему бы не установить его по умолчанию на NULL
?
При этом у вас есть несколько вариантов:
Как отметил @PSalmon, вы можете использовать сгенерированный столбец, если ваша версия его поддерживает:
CREATE TABLE demo
(
`id` INT PRIMARY KEY AUTO_INCREMENT,
`name` VARCHAR(255),
pixel AS (`id`)
)
Как отмечалось @WhatsThePoint, вы можете использовать триггер .При вставке обновите pixel
, чтобы соответствовать id
.
Опять же, на самом деле нет необходимости иметь отдельный атрибут с тем же значением, что и id
.Если вам это действительно нужно, вы можете создать представление со столбцом pixel
, соответствующим вашему id
.