Ale*_*don 3 sql-server-2008 sql-server alter-table transaction-log
运行此代码:
ALTER TABLE npidata
ALTER COLUMN npi varchar(20)
Run Code Online (Sandbox Code Playgroud)
给出这个错误:
消息 9002,级别 17,状态 4,第 2 行
数据库“SalesDWH”的事务日志已满。要找出无法重用日志中的空间的原因,请参阅 sys.databases 中的 log_reuse_wait_desc 列
我正在将NPI
列的数据类型从更改varchar(80)
为varchar(20)
。
下面的代码给了我同样的错误信息:
insert into npidata1 select * from npidata
Run Code Online (Sandbox Code Playgroud)
log_reuse_wait_desc
显示 NOTHING
SIMPLE
autogrowth
被设定为 NONE
autoshrink
被设定为 true
我还可以做些什么?我的理解是日志应该在每次变得太大时截断。我究竟做错了什么?