zoukankan      html  css  js  c++  java
  • SQL SERVER数据库状态(脱机,联机,可疑)及SQL设置语句详解

    首先我们应该知道数据库总是处于一个特定的状态中,下面先来了解一下数据库的常见的三种状态: 1,脱机:我们可以在Microsoft SQL Server Management中看到该数据库,但该数据库名称旁边有"脱机"的字样,说明该数据库现在虽然存在于数据库引擎实例中,但是不可以执行任何有效的数据操作,比如新增,修改,删除等,这就是脱机状态。
    2,联机:该状态为数据库正常状态,也就是我们常看到的数据库的状态,该状态下的数据库处于可操作状态,可以对数据库进行任何权限内的操作。
    3,可疑:和"脱机"状态一样,我们可以在Microsoft SQL Server Management中看到该数据库,但该数据库名称旁边有"可疑"的字样,这说明至少主文件组可疑或可能已损坏。
    如何利用SQL命令查看数据库状态: 可利用sys.databases表.在该表的state_desc列中标记了数据库的状态,sql语句如下:

    select name,state_desc from sys.databases

    可视化设置数据库状态: 设置为脱机:在Microsoft SQL SERVER Management中打开该数据库,在该数据库上右击,在右键菜单选择"任务"- >"脱机"
    设置为联机:如果数据库的现在状态为脱机,则可在Microsoft SQL SERVER Management中打开该数据库,在该数据库上右击,在右键菜单选择"任务"- >"联机"
    可疑:该状态为数据库自动测试数据文件的状态。
    利用SQL命令设置数据库状态: 设置为脱机的SQL语句如下:

    EXEC sp_dboption '数据库名称', 'offline', 'TRUE'

    或者

    ALTER DATABASE 数据库名称 SET OFFLINE

    设置为联机的SQL语句如下:

    ALTER DATABASE 数据库名称 SET ONLINE

    说明: ·虽然SQL SERVER数据库的脱机与联机是两个很简单的概念,但是它却能在细微之处反映我们的开发人员对数据库的基础知识的了解程度,所以还是希望大家能够清楚的了解数据库的状态及改变数据库状态的SQL命令。
    ·如果我们在复制数据库的源文件的时候提示该文件正在使用,我们可以先设置数据库为脱机再复制。

    君子性非异也,善假于物也!
  • 相关阅读:
    Java 深拷贝和浅拷贝 利用序列化实现深拷贝
    算法题005 剑指Offer面试题29 数组中出现次数超过一半的数字
    算法题003 斐波那契(Fibonacci)数列
    Android Sensors (4) 传感器使用最佳实践
    Android WebView使用基础
    Java 多线程(八) 线程状态图
    算法题006 判断两个链表是否相交
    Java 多线程(五) 多线程的同步
    算法题001 剑指Offer 面试题三:二维数组中的查找
    Android绘制基础及手写绘制实例
  • 原文地址:https://www.cnblogs.com/zhaoCat/p/5956033.html
Copyright © 2011-2022 走看看