У меня есть таблица в MSSQL, у которой есть столбец, где значение не может быть нулевым. Но есть обновления где я хочу установить этот столбец в null, когда я обновляю другие столбцы. Есть ли такой способ достичь этого, или я должен воссоздать таблицу, позволяя столбцу принимать нулевые значения.
Обновление SQL для разрешения нулевых значений
Ответ 1
Вы должны разрешить null для своего столбца: alter table T1 alter column C1 int null
Ответ 2
Возможно, вы могли бы сделать что-то вроде этого:
"ALTER TABLE table ADD COLUMN newcolumn VARCHAR(255)"
"UPDATE TABLE table SET newcolumn = oldcolumn"
"ALTER TABLE table DROP COLUMN oldcolumn"
"ALTER TABLE table ADD COLUMN oldcolumn VARCHAR(255)"
"UPDATE TABLE table SET oldcolumn = newcolumn"
Ответ 3
Вам нужно будет обновить схему. Другого пути нет. В этом причина ограничений. Вы можете выполнить изменение, чтобы избежать полного воссоздания таблицы, если у вас есть данные, которые не будут потеряны, то есть
Ответ 4
используйте инструкцию ALTER TABLE
, чтобы разрешить нулевые значения.