我正在尝试将列更改为not null
3.5 gb 表(SQL Server Express)。
所有行都包含表中的值。
我删除复选框allow null
并单击保存。
我得到:
无法修改表。
超时已过。在操作完成之前超时时间已过或服务器没有响应。
我该如何克服呢?
我正在尝试将列更改为not null
3.5 gb 表(SQL Server Express)。
所有行都包含表中的值。
我删除复选框allow null
并单击保存。
我得到:
无法修改表。
超时已过。在操作完成之前超时时间已过或服务器没有响应。
我该如何克服呢?
它可能无法直接工作。你需要这样做
首先将表中的所有 NULL 值设为非 null
UPDATE tblname SET colname=0 WHERE colname IS NULL
然后更新你的表
ALTER TABLE tblname ALTER COLUMN colname INTEGER NOT NULL
希望这能解决您的问题。
试试这个:
ALTER TABLE tblname ADD CONSTRAINT [DF_tblname_colnamename] DEFAULT (0) FOR colname
ALTER TABLE tblname ALTER COLUMN colname INTEGER NOT NULL
您还可以增加或覆盖超时。
从这里您可以选择覆盖超时或增加它:
增加您的“交易超时时间:”(见图)
或者
取消选中“覆盖表设计器更新的连接字符串超时值:”
如您所见,默认超时为 30 秒。这些选项记录在此处的 MS 支持页面上。