MySQL не поддържа изчислени колони или изрази в DEFAULT опция за дефиниция на колона.
Можете да направите това в тригер (изисква се MySQL 5.0 или по-нова версия):
CREATE TRIGGER format_stage_name
BEFORE INSERT ON actors
FOR EACH ROW
BEGIN
SET NEW.stage_name = CONCAT(NEW.forename, ' ', NEW.surname);
END
Може също да искате да създадете подобен тригер BEFORE UPDATE .
Внимавайте за NULL в име и фамилия, защото конкат на NULL с всеки друг низ създава NULL . Използвайте COALESCE() на всяка колона или на свързания низ според случая.
редактиране: Следният пример задава stage_name само ако е NULL . В противен случай можете да посочите stage_name във вашия INSERT изявление и то ще бъде запазено.
CREATE TRIGGER format_stage_name
BEFORE INSERT ON actors
FOR EACH ROW
BEGIN
IF (NEW.stage_name IS NULL) THEN
SET NEW.stage_name = CONCAT(NEW.forename, ' ', NEW.surname);
END IF;
END