赛迪网 > IT技术 数据库 > 精彩更新
  IT资讯搜索
 
IT产品搜索

教你使用SQLDMO从SQL Server中获取信息

发布时间:2007.08.08 04:42     来源:赛迪网    作者:hushanhe

SQL Server提供了一个非常方便的COM组件“SQLDMO”来帮助我们获取和管理SQL Server。在这里提供一些想法和实现。

系统要求:

Windows2000 Server
Vs.net rc3
SQL Server 2000

正文:

1.在.NET中使用sqldmo.dll

path :>tlbimp sqldmo.dll /out : rc3sqldmo.dll

创建一个新的C#项目(winform, library....),添加引用,选择Browse,找到rc3sqldmo.dll,加入。

2.查看rc3sqldmo.dll的结构

打开object view,选择rc3sqldmo,你能浏览所有的属性、方法和事件的定义。

3.使用rc3sqldmo

获得连接:

rc3sqldmo.sqlserver2 mysqlsvr = new 
rc3sqldmo.sqlserver2class();
mysqlsvr .connect("sqlservername","uid","pws");

获得数据库信息:

rc3sqldmo.databases mydbs=mysqlsvr.databases;
rc3sqldmo.database2 mydb =new 
rc3sqldmo.database2class();
mydb=mydbs.item("dbname","owner"); 
或mydb=mysqlsvr.databases.item("dbname","owner");

获得表和字段的信息:

rc3sqldmo.Tables mytbls= mysqlsvr.databases.item
("dbname","owner").tables;
rc3sqldmo.table2 mytbl = new rc3sqldmo.table2class();
mytbl = mytbls.item("tablename","owner");或
mytbl = mysqlsvr.databases.item
("dbname","owner").tables.
item("tablename","owner");
string[3] mylist = new string[3];
rc3sqldmo.column2 myfield = new 
rc3sqldmo.column2class();
foreach(object o in mytbl.columns)
{ 
myfield = (rc3sqldmo.column2) o;
mylist[0]=myfield.name;
mylist[1] = myfield.datatype;
mylist[2] =myfield.length.tostring();
}

获得存储过程的信息:

rc3sqldmo.storedprecudure2 mysp = new 
rc3sqldmo.storedprecudure2class();
mysp =mysqlsvr.batabase.itrm("dbname",owner).
storedprecudures.item[B("spname",owner)]

用途:

动态管理sql server

动态获得table,storedprecudure的结构信息

还能增加,修改所有sql server object的内容。

(责任编辑:卢兆林)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· SQL开发人员应聘常被问的问题妙解汇总 (08-07) · 企业同步MobiLink与SQL Remote (08-07)
· 通过分析SQL语句的执行计划优化SQL(九) (08-07) · 解析:用代码刷新ODBC链接SQL Server表 (08-07)
· 几条相对于SQL Server密码的潜威胁判断 (08-06) · SQL Server依然是数据库市场上的No.1 (08-06)
· 设置Sybase SQL Anywhere以C/S方式运行 (08-06) · 快速了解:使用SQL时经常陷入的误区 (08-06)
· SQL Anywhere Studio MobiLink 之(2) (08-05) · SQL Anywhere Studio MobiLink 之(3) (08-05)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  博客·论坛 ·曾剑秋·项立刚·Java学习·网管