Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.24;
Скачать: CL | DM;

Вниз

CREATE DOMAIN BOOL AS CHAR(1) DEFAULT N CHECK (VALUE IN ( Y , N ));   Найти похожие ветки 

 
EternalWonderer   (2001-12-19 12:26) [0]

А не подскажут ли великие Мастера, как сие изречение будет звучать на PL\SQL? БОЛЬШОЕ спасибо.


 
Yuvich   (2001-12-19 12:38) [1]

Никак. DOMAIN не является объектом Oracle.


 
EternalWonderer   (2001-12-19 12:55) [2]

Верно, ключевого слова DOMAIN в Oracle нет.
Но ведь там есть CREATE TYPE, CREATE SUBTYPE и т.д.
Как задать тип данных с указанными ограничениями для последующего использования в разных таблицах? Или требуется прописывать эти ограничения в триггерах в каждом случае?


 
Yuvich   (2001-12-19 14:07) [3]

Лучше всего пока не связываться с Типами в Oracle (как говорит сам Oracle, между прочим), а "вешать" нужное ограничение на колонку при создании таблицы:

create table tab (
...
fld number(1) default "N" not null
constraint bool_fld check (fld in ("Y", "N")),
...
);


тип bool заменяется на number(1)

Да, неудобства есть - подобный констрэйнт надо "вешать" на каждое подобное поле каждой нужной таблицы, но если используется CASE (типа ERWin) и таблиц очень много, то неудобство исключается (в ERWin есть домены); если таблиц мало - то неудобством можно пренебречь. Если таблиц очень много и не используется CASE, то неудобством тоже можно пренебречь, т.к. "геморроя" и так хватит.


 
EternalWonderer   (2001-12-19 14:18) [4]

>Yuvich (19.12.01 14:07) Спасибо за разъяснение. Удачи!



Страницы: 1 вся ветка

Текущий архив: 2002.01.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
14-75676
petr_v_a
2001-11-22 17:32
2002.01.24
грабли


3-75522
step
2001-12-20 18:03
2002.01.24
DBGrid, строка #номер по порядку#


6-75645
Diamond Sirus Ringer
2001-10-29 15:06
2002.01.24
Проблемы клиент-сервеных приложений на основе сокетов


6-75636
Виктор
2001-08-28 16:05
2002.01.24
Как скачать файл по локальной сети ?


3-75470
vano
2001-12-07 16:21
2002.01.24
try except