开发者社区> walb呀> 正文

SMO学习笔记(五)——附加数据库

简介:
+关注继续查看
SQL Server Management Studio演示附加数据库:
1.选择数据库附加操作

2.选择附加按钮后会出现如下界面,然后点击添加按钮。

3.定位数据库文件,选择你分离或备份的数据库,点确定。

4.添加。

添加完毕!注意如果数据库已经存在或重名,附加数据库操作将失败!
SMO附加数据库代码如下:
/// <summary>
        
/// 附加数据库
        
/// 注意:如果数据库已经存在,附加将失败
        
/// </summary>
        
/// <param name="SqlConnectionString"></param>
        public static void AttachDatabase(string SqlConnectionString)
        {
            
using (SqlConnection Connection = new SqlConnection(SqlConnectionString))
            {

                Server server 
= new Server(new ServerConnection(Connection));
                StringCollection files 
= new StringCollection();

                Database currentDb 
= server.Databases["test"];
                
                
if (currentDb == null)
                {

                    
//主文件是必须的
                    
//文件名、文件后缀的大小写无所谓,即实际文件是Over.Mdf但这里指定成over.mdf也没有关系
                    files.Add(string.Format(@"{0}\{1}.mdf""D:\"""test"));
                    //log可以不设置
                    files.Add(string.Format(@"{0}\{1}_log.ldf","D:\"""test"));
                    //AttachDatabase(数据库名称,附加数据库文件路径,数据库所有者,AttachOptions选项)
                    
//第三个设置了不起作用!附加后的数据库显示所有者为Connection中连接用户为所有者tj
                    server.AttachDatabase("oye", files, "tj", AttachOptions.None);
                }
            }
        }
本文转自博客园农民伯伯的博客,原文链接:SMO学习笔记(五)——附加数据库,如需转载请自行联系原博主。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
SQL数据库学习之路(四)
要求:通过SQL语句创建以下基本表:    教师关系 T(T#, TNAME,TITLE)    课程关系 C(C#,CNAME,T#)    学生关系 S(S#,SNAME,AGE,SEX)    选课关系SC(S#,C#,SCORE)    班级关系CLASS(CLASSID,CLASSNAME)    其中红色粗体为主键,带下划线的属性为外键。
776 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
19433 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
24519 0
SQL数据库学习之路(八)
数据库介绍: 在网页上的主程序中进行注册操作,然后把数据发送给人,人传递这些数据到数据库当中。   为什么学ADO.NET:之前我们所学的只能在查询分析器中查看数据,操作数据。
843 0
重新学习MySQL数据库6:浅谈MySQL的中事务与锁
『浅入深出』MySQL 中事务的实现   在关系型数据库中,事务的重要性不言而喻,只要对数据库稍有了解的人都知道事务具有 ACID 四个基本属性,而我们不知道的可能就是数据库是如何实现这四个属性的;在这篇文章中,我们将对事务的实现进行分析,尝试理解数据库是如何实现事务的,当然我们也会在文章中简单对 MySQL 中对 ACID 的实现进行简单的介绍。
1460 0
【DATAGUARD 学习】如何停止standby数据库
主库:ORCL  备库:TESTDG           一般的,停止standby数据库之前,要先停用primary库,如果直接停用standby库,可能导致primary库也直接shutdown(最大保护模式)。
800 0
SQL数据库学习之路(六)
一、连接查询:当需要的结果需要从多张表中取时 关键问题:哪些表、关系(学生表的Id联系到班级表的Id) 内连接:inner join,两表中完全匹配的数据。
858 0
+关注
1038
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载