zoukankan      html  css  js  c++  java
  • sqlserver数据库脱机时发生异常:由于无法在数据库 'SMS' 上放置锁,ALTER DATABASE 失败。请稍后再试。 ALTER DATABASE 语句失败。 (.Net SqlClient Data Provider)

    sqlserver数据库脱机时发生异常,如下:

    ===================================

    设置脱机 对于 数据库“SMS”失败。  (Microsoft.SqlServer.Smo)

    ------------------------------ 有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.2500.0+((KJ_PCU_Main).110617-0038+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=设置脱机+Database&LinkId=20476

    ------------------------------ 程序位置:

       在 Microsoft.SqlServer.Management.Smo.Database.SetOfflineImpl(Boolean offline)    在 Microsoft.SqlServer.Management.Smo.Database.SetOffline()    在 Microsoft.SqlServer.Management.SqlManagerUI.DatabaseOffline.DatabaseOfflineAction.DoAction(ProgressItemCollection actions, Int32 index)    在 Microsoft.SqlServer.Management.SqlStudio.Controls.ProgressItemCollection.DoWorkOnThread()

    ===================================

    执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)

    ------------------------------ 程序位置:

       在 Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(String sqlCommand, ExecutionTypes executionType)    在 Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(StringCollection sqlCommands, ExecutionTypes executionType)    在 Microsoft.SqlServer.Management.Smo.ExecutionManager.ExecuteNonQuery(StringCollection queries)    在 Microsoft.SqlServer.Management.Smo.Database.SetOfflineImpl(Boolean offline)

    ===================================

    由于无法在数据库 'SMS' 上放置锁,ALTER DATABASE 失败。请稍后再试。 ALTER DATABASE 语句失败。 (.Net SqlClient Data Provider)

    ------------------------------ 有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.2550&EvtSrc=MSSQLServer&EvtID=5061&LinkId=20476

    ------------------------------ 服务器名称: (local) 错误号: 5061 严重性: 16 状态: 1 行号: 1

    ------------------------------ 程序位置:

       在 Microsoft.SqlServer.Management.Common.ConnectionManager.ExecuteTSql(ExecuteTSqlAction action, Object execObject, DataSet fillDataSet, Boolean catchException)    在 Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(String sqlCommand, ExecutionTypes executionType)

     解决办法:

    通过如下指令,获取当前DB的Session,然后将对应的SPID Kill掉,之后再执行ALTER DATABASE 语句。

    EXEC sp_who2;

    KILL <SPID>;

  • 相关阅读:
    safari兼容时间格式 NAN
    高阶组件
    SqlBulkCopy与触发器,批量插入表(存在则更新,不存在则插入)
    SQL Server 触发器
    浅谈数据库中的触发器
    SQL Server 2008 表变量参数(表值参数)用法
    SQL Server 批量插入数据的两种方法
    SQL Server 2008 R2 主从数据库同步
    C#操作FTP, FTPHelper和SFTPHelper
    orcherd 汉化
  • 原文地址:https://www.cnblogs.com/strayromeo/p/4315611.html
Copyright © 2011-2022 走看看