powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / почему не удается изменить свойство 'allow nulls' столбца ?
4 сообщений из 4, страница 1 из 1
почему не удается изменить свойство 'allow nulls' столбца ?
    #32014209
Dmitri ICQ104152399
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
при попытке убрать галочку '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
почему не удается изменить свойство 'allow nulls' столбца ?
    #32014210
GreenSunrise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У тебя среди записей в этой таблице есть такие, у которых в поле Col1 содержится null. Надо сначала изменить или удалить все такие записи, а потом уже модифицировать структуру таблицы.
...
Рейтинг: 0 / 0
почему не удается изменить свойство 'allow nulls' столбца ?
    #32014211
Dmitri ICQ104152399
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Забыл сказать что таблица ПУСТА! причем в ошибке фигурирует имя не самой таблицы, а с префиксом 'TMP'
В общем помогла следующая вещь: создал новую копию базы(может быть можно было-бы и таблицы) и изменения стали доступны. Но все-таки непонятна причина проблемы.
...
Рейтинг: 0 / 0
почему не удается изменить свойство 'allow nulls' столбца ?
    #32014215
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавление 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
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / почему не удается изменить свойство 'allow nulls' столбца ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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