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

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

alter table t modify (
PAY_TYPE_ID NUMBER(5, 0) NOT NULL
);
...
Рейтинг: 0 / 0
alter table
    #32095308
[IPT]-Said
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
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
alter table
    #32095313
kas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
kas
Гость
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
alter table
    #32095318
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Мне кажется подобная нотация дефолт не уберет, скорее так

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

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

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


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