Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / почему не удается изменить свойство 'allow nulls' столбца ? / 4 сообщений из 4, страница 1 из 1
17.09.2001, 13:06
    #32014209
Dmitri ICQ104152399
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
почему не удается изменить свойство 'allow nulls' столбца ?
при попытке убрать галочку 'allow nulls' выдается сообщение:
"'TBL_1' table
- Unable to modify table.
ODBC error: [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot insert the value NULL into column 'Col1', table 'BASE1.dbo.Tmp_TBL_1'; column does not allow nulls. INSERT fails.
[Microsoft][ODBC SQL Server Driver][SQL Server]The statement has been terminated."

вопрос: как помочь беде?
...
Рейтинг: 0 / 0
17.09.2001, 13:11
    #32014210
GreenSunrise
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
почему не удается изменить свойство 'allow nulls' столбца ?
У тебя среди записей в этой таблице есть такие, у которых в поле Col1 содержится null. Надо сначала изменить или удалить все такие записи, а потом уже модифицировать структуру таблицы.
...
Рейтинг: 0 / 0
17.09.2001, 13:43
    #32014211
Dmitri ICQ104152399
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
почему не удается изменить свойство 'allow nulls' столбца ?
Забыл сказать что таблица ПУСТА! причем в ошибке фигурирует имя не самой таблицы, а с префиксом 'TMP'
В общем помогла следующая вещь: создал новую копию базы(может быть можно было-бы и таблицы) и изменения стали доступны. Но все-таки непонятна причина проблемы.
...
Рейтинг: 0 / 0
17.09.2001, 14:58
    #32014215
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
почему не удается изменить свойство 'allow nulls' столбца ?
Добавление constraint-a NOT NULL происходит через промежуточную таблицу, т.е. создается таблица BASE1.dbo.Tmp_TBL_1, а затем в нее копируютя все записи из BASE1.dbo.TBL_1. Если все прошло успешно, то страрая таблица удаляется и новая переименовывается.
Если сбой у вас происходит на стадии переноса записей, это означает IMHO , что оригинальная таблица все-таки содержит записи, т.к. скрипт на изменения, который предлагает мне мой SQL2000 SP1 содержит следущее
IF EXISTS(SELECT * FROM dbo.TBL_1) EXEC('INSERT INTO dbo.Tmp_TBL_1(...) SELECT ... FROM dbo.TBL_1')
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / почему не удается изменить свойство 'allow nulls' столбца ? / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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