Вниз
Скачать: CL | DM;

Как добавить существующeму полю NOT NULL   Найти похожие ветки 

← →
Zn   (2003-10-16 12:22) [0]

В таблице есть поле, которое я хочу сделать первичным индексом. Для начала необходимо добавить ему NOT NULL. Просто создать новое, а потом перенести значения не могу, так как есть связи с другими таблицами. Подскажите, что тут можно сделать?


← →
Val ©   (2003-10-16 12:28) [1]

так отцепите для начала все ограничения и триггера от таблицы, которую собрались модифицировать.


← →
Romkin ©   (2003-10-16 12:29) [2]

Проще всего скачать IBExpert и воспользоваться им. Сложнее - поправить системную таблицу.
Только потом в любом случае backup/restore надо, предварительно проконтролировав, чтобы в этом поле NULL не было


← →
Reindeer Moss Eater ©   (2003-10-16 12:48) [3]

CREATE TABLE TEST_TAB (ID INTEGER);

INSERT INTO TEST_TAB VALUES(1);

COMMIT;

CREATE DOMAIN NOT_NULL_INT INTEGER NOT NULL;

ALTER TABLE TEST_TAB ALTER ID TYPE NOT_NULL_INT;

ALTER TABLE TEST_TAB ADD CONSTRAINT PK_TEST_TAB PRIMARY KEY(ID);


← →
Zn   (2003-10-16 12:54) [4]


> Val © (16.10.03 12:28) [1]

Думал, это как-то можно обойти...

> Romkin © (16.10.03 12:29) [2]

Спасибо! Нашёл IBExpert. Попробую через него.


← →
Reindeer Moss Eater ©   (2003-10-16 12:57) [5]

Думаю IBExpert делает это через пересоздание таблицы или поля


← →
Romkin ©   (2003-10-16 13:12) [6]

Нет, правит системные таблицы, он еще и запрос пишет, можно посмотреть


← →
Val ©   (2003-10-16 13:45) [7]

>Zn (16.10.03 12:54) [4]
..Нашёл IBExpert. Попробую через него...
Для вас же лучше научиться делать это классически, не затрагивая системных таблиц, чтобы вы смогли повторить это действие позднее на любом SQL-сервере.


← →
Romkin ©   (2003-10-16 14:17) [8]

ЗАтрагивая системные таблицы, вы сможете повторить это на любом IB/FB сервере :) Насчет остальных серверов БД - у каждого свое, у MSSQL для этого, кажется, хранимая процедура есть :)))


← →
Val ©   (2003-10-16 14:45) [9]

>Romkin © (16.10.03 14:17) [8]
добавим еще и необходимость наличия соотв. прав.


← →
Zn   (2003-10-17 18:34) [10]


> Val © (16.10.03 13:45) [7]

Вы правы, но я ещё только учусь...



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.021 c
1-41327
DNS
2003-10-24 18:41
2003.11.13
Написание компонента для работы с реестром по XP


1-41579
McSimm2
2003-11-04 11:08
2003.11.13
Как нарисовать иконку в MenuItem


1-41154
Ivolg
2003-11-03 12:01
2003.11.13
Звуки из динамика


3-40798
Виталя
2003-10-22 15:17
2003.11.13
Как отследить поле NULL возвращаемое хранимой процедурой ?


14-41891
data
2003-10-21 13:51
2003.11.13
Пример формы заказа




   Наверх