Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / alter table / 9 сообщений из 9, страница 1 из 1
23.01.2003, 14:41
    #32095262
kas
kas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter table
как из опредления поля в таблице убрать значение по умолчанию поля,
т.е. есть:
PAY_TYPE_ID NUMBER(5, 0) DEFAULT 3 NOT NULL

надо:
PAY_TYPE_ID NUMBER(5, 0) NOT NULL
...
Рейтинг: 0 / 0
23.01.2003, 14:56
    #32095275
.dba
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter table
начиная с 8i

alter table t modify (
PAY_TYPE_ID NUMBER(5, 0) NOT NULL
);
...
Рейтинг: 0 / 0
23.01.2003, 15:31
    #32095308
[IPT]-Said
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter table
alter table t modify (
PAY_TYPE_ID NUMBER(5, 0) NOT NULL
);
----------------------
Мне кажется подобная нотация дефолт не уберет, скорее так
alter table t modify (
PAY_TYPE_ID NUMBER(5, 0) DEFAULT NULL NOT NULL
);
...
Рейтинг: 0 / 0
23.01.2003, 15:37
    #32095313
kas
kas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter table
2dba:
я так пробывал,
при этом вываливается ошибка:
ORA-01442: модифицируемый в NOT NULL столбец уже имеет атрибут NOT NULL
если сделать просто:
alter TABLE T modify (PAY_TYPE_ID NUMBER(5, 0) NULL);
ТО В NULL ПЕРЕВОДИТСЯ, А "DEFAULT 3" ОСТАЕТСЯ!

2[IPT]-Said:
так тоже пробывал
default так и становится "DEFAULT NULL"
...
Рейтинг: 0 / 0
23.01.2003, 15:42
    #32095318
.dba
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter table
>Мне кажется подобная нотация дефолт не уберет, скорее так

Да, действительно :-) Но твой вариант все равно не сработает - надо вот так:

alter table t modify (
PAY_TYPE_ID NUMBER(5, 0) DEFAULT NULL
);
...
Рейтинг: 0 / 0
23.01.2003, 15:46
    #32095322
.dba
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter table
>так тоже пробывал
>default так и становится "DEFAULT NULL"

Да, остается немного странное свойство колонки "DEFAULT NULL NOT NULL", но при инсертах ведет себя корректно.
...
Рейтинг: 0 / 0
23.01.2003, 15:48
    #32095324
kas
kas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter table
опять не то! Остается "DEFAULT NULL" в определение поля
...
Рейтинг: 0 / 0
23.01.2003, 15:50
    #32095326
kas
kas
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter table
ну если ведет корректно, то черт с ним, с определением! Спасибо!
...
Рейтинг: 0 / 0
23.01.2003, 15:55
    #32095332
softy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
alter table
В 8i это точно проходит(проверял)
Код: plaintext
1.
ALTER TABLE TEST MODIFY( "ID_USER" );
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / alter table / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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