SQL Server编程系列(1):SMO介绍
2012-05-17 07:33:39 来源:WEB开发网核心提示:我看到有人在Stack Overflow提了和我疑惑相同的问题,别人给了一个答案就是在VS2010中安装Muse.VSExtensions来解决,SQL Server编程系列(1):SMO介绍(4),安装地址:http://visualstudiogallery.msdn.microsoft.com/36a6eb45-
我看到有人在Stack Overflow提了和我疑惑相同的问题,别人给了一个答案就是在VS2010中安装Muse.VSExtensions来解决,安装地址:http://visualstudiogallery.msdn.microsoft.com/36a6eb45-a7b1-47c3-9e85-09f0aef6e879/,我尝试了一下不是很理想,不过Muse.VSExtensions还提供了其它的功能(比如移除未使用的程序集)还是不错的。
注意在编译下面的代码之前需要添加对microsoft.sqlserver.connectioninfo.dll和microsoft.sqlserver.smo.dll的引用。
代码如下:
using System; using Microsoft.SqlServer.Management.Common;//需添加microsoft.sqlserver.connectioninfo.dll的引用 using Microsoft.SqlServer.Management.Smo;//需添加microsoft.sqlserver.smo.dll的引用 namespace SSISStudy { /// <summary> /// SQL Server编程些列文章(1):SMO介绍的配套代码 /// 作者:周公 /// 创建日期:2012-05-17 /// 博客地址:http://blog.csdn.net/zhoufoxcn http://zhoufoxcn.blog.51cto.com /// 新浪微博地址:http://weibo.com/zhoufoxcn /// </summary> class SMODemo01 { /// <summary> /// 显示数据库的概要情况 /// </summary> public static void ShowServerInfo() { //创建ServerConnection的实例 ServerConnection connection = new ServerConnection(); //指定连接字符串 connection.ConnectionString = "Data Source=goodapp;Initial Catalog=master;User ID=sa;Password=root;"; //实例化Server Server server = new Server(connection); Console.WriteLine("ActiveDirectory:{0}", server.ActiveDirectory); Console.WriteLine("InstanceName:{0}",server.InstanceName); //列出当前SQL Server实例中的登录用户 foreach (Login login in server.Logins) { Console.WriteLine("Name:{0},CreateDate:{1},DefaultDatabase:{2}", login.Name, login.CreateDate, login.DefaultDatabase); } //通过索引方式找到master数据库 Database db = server.Databases["master"]; Console.WriteLine("Database:{0}", db.Name); Console.WriteLine("CreateDate:{0},Dbo:{1}", db.CreateDate, db.Owner); Console.WriteLine("DataSpaceUsage:{0},SpaceAvailable:{1}", db.DataSpaceUsage, db.SpaceAvailable); Console.WriteLine("PrimaryFilePath:{0}", db.PrimaryFilePath); //列出master数据库下每个表的概要信息 foreach (Table table in db.Tables) { Console.WriteLine("\tTable:{0},DataSpaceUsed:{1},CreateDate:{2}", table.Name, table.DataSpaceUsed, table.CreateDate); //urnCollection.Add(table.Urn); //列出每个表中每个列的概要信息 foreach (Column column in table.Columns) { Console.WriteLine("\t\tColumn:{0},DataType:{1},Nullable:{2}", column.Name, column.DataType, column.Nullable); } } //列出master数据库中的角色信息 foreach(DatabaseRole dbRole in db.Roles) { Console.WriteLine("DB Role {0} Created at {1}", dbRole.Name, dbRole.CreateDate); } Console.ReadLine(); } } }
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接