Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Теоретические аспекты и практические реализации создания, внедрения и использования баз данных, СУБД, хранилищ.
  • Страница:
  • 1

ТЕМА:

alter table в Oracle 12 года 9 мес. назад #2600

как из опредления поля в таблице убрать значение по умолчанию поля,
т.е. есть:
PAY_TYPE_ID NUMBER(5, 0) DEFAULT 3 NOT NULL

надо:
PAY_TYPE_ID NUMBER(5, 0) NOT NULL

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: alter table в Oracle 12 года 9 мес. назад #2601

начиная с 8i
alter table t modify (
PAY_TYPE_ID NUMBER(5, 0) NOT NULL
);

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: alter table в Oracle 12 года 9 мес. назад #2602

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
);

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: alter table в Oracle 12 года 9 мес. назад #2603

Kireev, я так пробывал,
при этом вываливается ошибка:
ORA-01442: модифицируемый в NOT NULL столбец уже имеет атрибут NOT NULL
если сделать просто:
alter TABLE T modify (PAY_TYPE_ID NUMBER(5, 0) NULL);
ТО В NULL ПЕРЕВОДИТСЯ, А "DEFAULT 3" ОСТАЕТСЯ!

Reset,
так тоже пробывал
default так и становится "DEFAULT NULL"

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: alter table в Oracle 12 года 9 мес. назад #2604

Да, действительно :-)Но твой вариант все равно не сработает - надо вот так:
alter table t modify (
PAY_TYPE_ID NUMBER(5, 0) DEFAULT NULL
);

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Страница:
  • 1
Время создания страницы: 0.201 секунд