SqlServer Management Objects简介
2008-06-16 11:31
344 查看
Smo是SqlServer Management Objects的简称,由SQL2005提供的管理对象,sql-dmo的逻辑进化版本,主要功能由C:/Program Files/Microsoft SQL Server/90/SDK/Assemblies下面的Microsoft.SqlServer.Smo.dll文件中的相关 对象来实现,可以直接由vs2005开发的程序来引用。
msdn参考文档:
http://msdn.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.aspx。
文档中他列举了7条大的功能,其实毫不夸张地说,只要SQL Server Management Studio能实现的东西,用smo都能实现,因为SQL Server Management Studio就是用smo开发的。如果你有足够的实力,完全可以开发一个可以藐视SQL Server Management Studio的工具,比如加入智能感知的功能。
具体详细应用这里就不展开了,对象太多...只举一个例子,很多人问的如何生成sql对象的脚本:
输出: SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON CREATE TABLE [dbo].[test]( [id] [int] IDENTITY(1,1) NOT NULL ) ON [PRIMARY]
msdn参考文档:
http://msdn.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.aspx。
文档中他列举了7条大的功能,其实毫不夸张地说,只要SQL Server Management Studio能实现的东西,用smo都能实现,因为SQL Server Management Studio就是用smo开发的。如果你有足够的实力,完全可以开发一个可以藐视SQL Server Management Studio的工具,比如加入智能感知的功能。
具体详细应用这里就不展开了,对象太多...只举一个例子,很多人问的如何生成sql对象的脚本:
--先搞一个测试环境 use tempdb create table test(id int identity(1,1))
//添加引用 //Microsoft.SqlServer.ConnectionInfo.dll //Microsoft.SqlServer.Smo.dll Microsoft.SqlServer.Management.Common.ServerConnection conn = new Microsoft.SqlServer.Management.Common.ServerConnection( new System.Data.SqlClient.SqlConnection("server=localhost;uid=sa;pwd=***;database=master"));//一个数据库连接字符串 Microsoft.SqlServer.Management.Smo.Server server = new Microsoft.SqlServer.Management.Smo.Server(conn); Microsoft.SqlServer.Management.Smo.Database db = server.Databases["tempdb"]; Microsoft.SqlServer.Management.Smo.Table tb= db.Tables["test"]; System.Collections.Specialized.StringCollection sc= tb.Script(); foreach (String s in sc) { Console.WriteLine(s); }
输出: SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON CREATE TABLE [dbo].[test]( [id] [int] IDENTITY(1,1) NOT NULL ) ON [PRIMARY]
相关文章推荐
- (转)SqlServer Management Objects简介,生成建表等SQL语句
- SqlServer Management Objects简介
- SMO编程初步(Getting started with SQL Server Management Objects (SMO))
- SQL Server Management Objects (SQL 管理对象 (SMO))
- SMO是英文SQL Server Management Objects的缩写(上一篇文章的补充)
- SQL Server Management Studio连接服务器时指定端口号
- SQL Server Management Studio attach mdf数据库文件
- 第1篇 基础篇 实验5 用SQL Server Management Studio 创建表
- sql2005 Microsoft SQL Server Management Studio Express的安装问题
- 清除SQL Server Management账号密码保存记录
- 设置登录账号只有查看Microsoft SQL Server Management Studio左边目录树的权限
- 在SQL Server Management Studio中使用手动提交更改
- Win7(64位)安装Microsoft SQL Server Management Studio Express[error 29506]
- Dropping multiple SQL Server objects with a single DROP statement
- Visual Studio 2008不能创建数据库连接出现:未能加载文件或程序集“Microsoft.SqlServer.Management.Sdk.Sfc, Version=10.0.0.0, Culture=neutral,Publi
- SQL Server Management Studio中访问EXCEL 2007(XLSX)文件的方法
- 关于sql server 2008 r2 展开时报错:参数名:viewInfo ( Microsoft SqlServer Management SqlStudio Explorer )解决思路
- 让SQL Server Management Studio直接连接数据库
- 卸载 SQL Server Management Studio 的操作工具
- 安装SQL Server Management Studio遇到的29506错误