| 使用SQLDMO从SQL Server中获取信息 |
|
作者:佚名 文章来源:网贝整理|http://www.netbei.com/ 点击数: 更新时间:2005-1-11 0:39:57  |
提要: ms sql server提供了一个非常方便的COM组件“SQLDMO”来帮助我们获取和管理SQL Server。在这里提供一些想法和实现。 系统要求: windows2000server 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的内容。 |
| 文章录入:admin 责任编辑:admin |
|
上一篇文章: 使用sqlserver来存放和取得session
下一篇文章: 个实现自动求和/合并单元格/排序的DataGrid |
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |