zoukankan      html  css  js  c++  java
  • TSQL管理数据库和数据库文件

    1、查看数据库的状态
      目录视图:select name , state_desc from sys.databases  where name = 'stusystem'
      函数:select DATABASEPROPERTYEX('stusystem','status')
      存储过程:sp_helpdb stusystem
    2、修改数据库
      2-1修改数据库名称
        alter database database_name modify name = new_name
        exec sp_renamedb 'studentsystem','stusystem'
      2-2扩大数据库
        alter database stusystem
        add file
        (  name , filename , size , maxsize , filegrowth )
      2-3收缩数据库,收缩后的数据库不能小于数据库的最小大小
        自动数据库收缩:在alter table 语句中,可以将auto_shrink选项设置为on
        手动收缩数据库:
          desc shrinkdatabase
          ( database_name | database_id | 0  要收缩的数据库名称或者ID,如果指定为0,则使用当前数据库
          [ , target_percent ]    收缩后的数据库文件中所需的剩余可用空间百分比
          )
      2-4收缩数据库文件
        手动数据库文件收缩
        dbcc shrinkfile
        (
          { file_name | file_id }
          { [ , emptyfile ]
          |  [ [ , target_size ] [ , { notruncate | truncateonly } ] ]
          }
        )
        [ with no_infomsgs ]
      2-5移动数据库文件(适用于同意SQL Server实例)
        alter database database_name
        modify file ( name = logical_name , filename = 'new_path\os_file_name' )
      2-6删除数据库
        drop database database_name [  , . . . n]
      2-7分离数据库
        分离数据库是指将数据库从SQL Server实例中删除 , 但使数据库在其数据文件和事务日志中保持不变
        如果存在下列任何情况,则不能分离数据库
          该数据库是系统数据库
          该数据库已经复制并发布。如果要分离数据库,必须首先执行sp_replicationdboption
          数据库中存在数据库快照。必须首先删除所有数据库快照再分离数据库
          数据库正在某个数据库镜像会话中进行镜像。必须先终止该会话再分离数据库
          数据库处于可疑状态,必须将数据库设为紧急模式再分离数据库
        exec  sp_detach_db stusystem
      2-8附加数据库
        create database stusystem
        on
        (
           name = stusystem_DAT,
           filename = 'E:\SQL\stusystem\stusystem_DAT.mdf',
           size = 20MB,
           maxsize = 40MB,
           filegrowth = 5%
        ),
        (
           name = stusystem_DAT1,
           filename = 'E:\SQL\stusystem\stusystem_DAT1.ndf',
           size = 20MB,
           maxsize = 40MB,
           filegrowth = 5%
        ),
        (
           name = stusystem_DAT2,
           filename = 'E:\SQL\stusystem\stusystem_DAT2.ndf',
           size = 20MB,
           maxsize = 40MB,
           filegrowth = 5%
        )
        log on
        (
           name = stusystem_LOG,
           filename = 'E:\SQL\stusystem\stusystem_LOG.ldf',
           size = 10MB,
           maxsize = 20MB,
           filegrowth = 1MB
        )
        for attach
    3、数据库快照(Express 版本不支持,必须保存在NTFS文件系统的分区上)
      3-1工作原理
        数据库快照与源数据库相关。数据库快照必须与数据库在同一服务器实例上
        数据库快照运行在数据页级
      3-2创建数据库快照
        create database database_snapshot_name
        on
        (
          name = logical_file_name ,
          filename = 'os_file_name' ,
        )[ , . . . n ]
        as snapshot of source_database_name
      3-3数据库恢复到数据库快照
        resotre database database_name from database_snapshot = database_snapshot_name
        
        

  • 相关阅读:
    人工智能背后的故事
    idea 开发插件。
    安卓工作室 Android studio 或 Intellij IDEA 美化 修改 汉化 酷炫 装逼 Android studio or Intellij IDEA beautify modify Chinesization cool decoration
    安卓工作室 android studio文件和代码模板,以及汉化出错问题
    安卓工作室 android studio 汉化后,报错。 设置界面打不开。Can't find resource for bundle java.util.PropertyResourceBundle, key emmet.bem.class.name.element.separator.label
    android studio的汉化 教程 及解析
    安卓工作室Android Studio 快捷键
    安卓工作室 android studio 的 汉化 美化 定制 Android studio's Chinesization beautification customization
    VR开发 VR development
    Lakeshore 中文开发界面,示例项目,飞机大战 等 Lakeshore Chinese development interface, sample project, aircraft war, etc
  • 原文地址:https://www.cnblogs.com/changweihua/p/2195104.html
Copyright © 2011-2022 走看看