最近我删除了所有自动创建的统计信息(名为_WA_Sys_%
)并运行以下 T-SQL 命令为数据库的所有列创建统计信息:
EXEC sp_createstats @indexonly = 'NO', @fullscan = 'FULLSCAN', @norecompute ='NO'
一切正常,直到我不得不在表中删除一列,然后error 5074
发生,表明应该在删除列之前删除统计信息。
有没有办法在SQL Server
删除列时静默删除用户创建的统计信息?
最近我删除了所有自动创建的统计信息(名为_WA_Sys_%
)并运行以下 T-SQL 命令为数据库的所有列创建统计信息:
EXEC sp_createstats @indexonly = 'NO', @fullscan = 'FULLSCAN', @norecompute ='NO'
一切正常,直到我不得不在表中删除一列,然后error 5074
发生,表明应该在删除列之前删除统计信息。
有没有办法在SQL Server
删除列时静默删除用户创建的统计信息?
我不认为你可以让 SQL Server 默默地做到这一点,因为这对于使用用户统计信息的人来说是一个常见的问题。有一种方法可以使用自定义查询删除相关统计信息- 它是否适合您的需求?