Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / добавить столбец "на живую" / 7 сообщений из 7, страница 1 из 1
24.03.2005, 19:13
    #32979549
Вопросник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
добавить столбец "на живую"
АСА 9
Есть таблица, данных уже -море. Надо добавить столбец. Ошибка говорит, таблица должна быть пустой. Но у меня как то получалось, с 3- что ли попытки, все таки добавить. А сейчас, опять -не получается.
(Добавление произвожу в Централе)
Как это может быть?
...
Рейтинг: 0 / 0
24.03.2005, 19:23
    #32979563
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
добавить столбец "на живую"
Да запросто. Ты добавляешь столбец с признаком NOT NULL, при этом не присвоив ему DEFAULT. И что, по-твоему, сервер должен сделать, кроме как обложить тебя матом ?
____________________________________
- Гарфилд, мышь!
- Спасибо, я сыт!
...
Рейтинг: 0 / 0
24.03.2005, 20:01
    #32979610
Рыжий Кот
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
добавить столбец "на живую"
Кстати, у меня были проблемы при добавлении в большую табличку not null bit default 1
приходилось делать сначала not null int default 1, потом менять тип на bit.
может уже исправили?..

...
Рейтинг: 0 / 0
24.03.2005, 20:10
    #32979617
Вопросник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
добавить столбец "на живую"
Нет, не устранили похоже.
У меня таблица -80 полей, -добавляю поле типа bit, default только 0!
...
Рейтинг: 0 / 0
24.03.2005, 20:29
    #32979645
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
добавить столбец "на живую"
Вопрос к Коту: а чем не устраивает такое?
Код: plaintext
1.
alter table sometable add new_field bit null default  1 ;
alter table sometable modify new_field bit not null default  1 ;
Работает всегда на ура. Ни разу, ни на одной версии не было проблем.
...
Рейтинг: 0 / 0
24.03.2005, 22:55
    #32979747
Рыжий Кот
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
добавить столбец "на живую"
Да нет, все устраивает. Проблема не в выборе первого варианта alter, а в необходимости как такового. Если это физически необходимо для ASA, то пусть вынесут в документацию.
З.Ы. не очень люблю метод научного тыка

...
Рейтинг: 0 / 0
24.03.2005, 23:19
    #32979750
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
добавить столбец "на живую"
Да при чем здесь метод научного тыка то?
Элементарно же все. Даже в стандарте SQL четко записано, что при добавлении нового поля в существующую таблицу оно будет заполнено null'ом или заданым значением по умолчанию для всех записей.
Если поле добавляется как not null и не указано значение по умолчанию - получаем конфликт. Как и предполагалось после прочтения учебника :)

А то что на каких-то старых версиях команда "alter table T1 add F1 bit not null default 1;" вела себя не совсем правильно, так это древнейшая история и происки врагов
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / добавить столбец "на живую" / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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