powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Ограничение...
6 сообщений из 6, страница 1 из 1
Ограничение...
    #35003220
Фотография Compositum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код такой:
Код: plaintext
1.
2.
3.
4.
5.
6.
--Дерево библиотеки материалов
Create table lib.TreeMaterials
(treeMaterialID			int identity		primary key		not null,
treeMaterialName		varchar( 255 )					not null,
treeMaterialFather		int						null)
go
В данной таблице хочу предусмотреть такое ограничение:
значение treeMaterialFather должно быть либо Null, либо равно одному из значений поля treeMaterialID.
Как это лучше сделать?
...
Рейтинг: 0 / 0
Ограничение...
    #35003231
Фотография Compositum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
constraint TreeMaterials_treeMaterialFather check(treeMaterialFather=Null 
or treeMaterialFather in (select treeMaterialID from TreeMaterials))
что-то вроде такого. но ведь так нельзя делать...
...
Рейтинг: 0 / 0
Ограничение...
    #35003260
Фотография Compositum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вернее что-то вроде этого:
Код: plaintext
1.
2.
constraint TreeMaterials_treeMaterialFather check(isnull(treeMaterialFather,True)
or (treeMaterialFather in (select treeMaterialID from TreeMaterials) and treeMaterialFather<>treeMaterialID))
проблема в том, что Вложенные запросы в данном контексте не разрешены. Допускаются только скалярные выражения .
...
Рейтинг: 0 / 0
Ограничение...
    #35003270
Akni
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
реализуйте это не через constraint, а через Foreign Key
...
Рейтинг: 0 / 0
Ограничение...
    #35003288
Фотография Compositum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akniреализуйте это не через constraint, а через Foreign Key
тут проблема.. некоторые записи будут иметь в поле treeMaterialFather значение null...
как с этим быть?
...
Рейтинг: 0 / 0
Ограничение...
    #35003296
Фотография Compositum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
млин... хотя... это вроде не должно помешать... торможу..
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Ограничение...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]