当前位置:七道奇文章资讯数据防范MSSQL防范
日期:2011-05-02 15:21:00  来源:本站整理

SQL Server数据库技术(36)[MSSQL防范]

赞助商链接



  本文“SQL Server数据库技术(36)[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

   在sql server 中可以利用拆分(Detach)和附加(Attach)的办法来移动数据库.拆分数据库是从服务器中移去逻辑数据库,但不会将操作系统中的数据库文件删除.附加数据库将会成立一个新的数据库,并复制存储在已有的数据库文件和事件日记文件中的数据.利用系统存储历程Sp_detach_db 来拆分数据库,用系统存储历程Sp_attach_db 来附加数据库.

Sp_detach_db 系统存储历程的语法以下:
sp_detach_db [@dbname =] 'database_name'
[, [@skipchecks =] 'skipchecks']
此中[@skipchecks =] 'skipchecks'子句中Skipchecks 的值为True 或False. 当Skipchecks的值为True 时,指定在履行此历程之前不需求对数据库中的全部表履行UPDATE STATISTICS号令;为False 时,则需求履行UPDATE STATISTICS 号令.

Sp_attach_db 系统存储历程的语法以下:
sp_attach_db [@dbname =] 'dbname',
[@filename1 =] 'filename_n' [,...16]
此中"filename_n"包含文件的途径和物理名称.最多可指定16 个文件.文件中必须包含主数据库文件.假如需求附加的文件超越了16 个,就必须利用带FOR ATTACH 子句的CREATE DATABASE 号令来替换.
注意:Sp_attach_db系统存储历程中只能作用于那些已经用Sp_detach_db系统存储历程从服务器中拆分出来的数据库.

例6-16:移动数据库mytest 到E:\SQL Data 目录下.
(1) 在SQL Server Query Analyzer 中运行系统存储历程Sp_helpdb, 得到mytest数据库所包含的文件名称、数目、范例、存放位置等信息.号令语句以下:
exec sp_helpdb mytest



(2) 在SQL Server Query Analyzer 中运行Sp_detach_db 系统存储历程,拆分mytest数据库.号令语句以下:
exec sp_detach_db mytest, true

运行后果以下:
Successfully detached database 'mytest1'.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

(3) 在操作系统的文件夹窗口顶用剪切或粘贴的方法直接将与数据库相关的操作系统文件移动到E:\ SQL Data 2000 Server 目录下.行将D:\SQL Data\mytest_Data.MDF 文件和D:\SQLData\mytest_Log.LDF 文件移到E:\ SQL Data 2000

(4) 在SQL Server Query Analyzer 中运行Sp_attach_db 系统存储历程,附加文件到mytest 数据库.号令语句以下:
exec sp_attach_db @dbname = 'mytest',
@filename1 = 'e:\sql data\mytest_data.mdf',
@filename2 = 'e:\sql data\mytest_log.ldf'

运行后果以下:
Successfully attached database 'mytest'.
至此已完成了数据库的移竣工作,可在Enterprise Manager 中查看mytest 数据库的信息,也可以在SQL Server Query Analyzer 中运行系统存储历程Sp_helpdb 来查看移动能否成功.

  以上是“SQL Server数据库技术(36)[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Windows 搭配 IIS7 PHP MySQL 环境
  • sqlserver索引的原理及索引成立的注意事项小结
  • SQL Join的一些总结(实例)
  • SQL的Join利用图解教程
  • SQL中JOIN和UNION辨别、用法及示例介绍
  • 关于SQL中CTE(公用表表达式)(Common Table Expression)的总结
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .