Columns: id INT, provice_id INT, is_province BIT
Foreign key: province_id references City (id)
Я бы хотел выразить концепцию: когда id == province_id
, то is_province == 1
.Как я могу выразить это?Может быть, с вычисляемым столбцом или другим ограничением?
РЕДАКТИРОВАТЬ : хорошо, так много комментариев, я объясню, почему существует атрибут is_province.Я знаю, что это избыточно, но в таблице будет храниться около 8000 записей, поэтому растрата не важна.Я добавляю is_province, потому что (используя DOctrine2) я могу более легко запрашивать провинции:
$provinces->findByIsProvince(true)
И да, я смешиваю провинции и города в одной таблице, потому что провинция равна на самом деле город и разделяют все его атрибуты.
Так что мой вопрос до сих пор, как можно навязать ограничение, которое if (id == province_id) then is_province == 1
?