2013-07-12 3 views
2

У меня есть схема, которая включает в дбВнешний ключ на том же столе

Group{name, group.id, parent.id} with key {group.id} 

В этой схеме все parent.id «s должны либо уже существуют в group.id столбец или быть пустым. Как я могу перевести это ограничение в SQL при создании таблицы? Thanks

ответ

2

Регулярный внешний ключ должен быть достаточным. Он не будет выполнять никаких проверок, если поле равно null. Точный синтаксис может немного зависеть от диалекта SQL, но он будет выглядеть примерно так:

create table Group_ (
    name varchar(30) not null, 
    groupid int not null primary key, 
    parentid int null foreign key references Group_ (groupid)) 
Смежные вопросы