分类
使用SQL DMO从SQL Server中获取信息‖
| ms sql server提供了 Server。在这里提供一些想 | 一个非常方便的COM组件“SQLDM 法和实现。 | O”来帮助我们获取和管理SQL |
| 系统要求: |
| windows2000server |
| vs.net rc3 |
| sql server 2000 |
| 正文: |
| 1.在.NET中使用sqldmo.dll |
| path :>tlbimp sqldmo.dll /out : rc3sqldmo.dll |
| 创建一个新的C#项目( rc3sqldmo.dll,加入。 | winform, library....),添加引 | 用,选择Browse,找到 |
| 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 rc | 3sqldmo.database2class(); |
| mydb=mydbs.item("dbn m("dbname","owner"); | ame","owner"); 或mydb=mysqls | vr.databases.ite |
| 获得表和字段的信息: |
| rc3sqldmo.Tables myt | bls= mysqlsvr.databases.item | ("dbname","owner").tables; |
| rc3sqldmo.table2 myt | bl = new rc3sqldmo.table2cla | ss(); |
| mytbl = mytbls.item("tablename", | "owner");或 |
| mytbl = mysqlsvr.databases.item( .item("tablename","owner"); | "dbname","owner").tables |
| string[3] mylist = new string[3]; |
| rc3sqldmo.column2 my | field = new rc3sqldmo.column | 2class(); |
| foreach(object o in mytbl.columns) |
| { |
| myfield = (rc3sqldmo.column2) o; |
| mylist[0]=myfield.name; |
| mylist[1] = myfield.datatype; |
| mylist[2] =myfield.length.tostring(); |
| } |
| 获得存储过程的信息: |
| rc3sqldmo.storedprec | udure2 mysp = new rc3sqldmo. | storedprecudure2class(); |
| mysp =mysqlsvr.batabase.itrm("db dures.item[B("spname",owner)] | name",owner).storedprecu |
| 用途的讨论: |
| 动态管理sql server |
| 动态获得table,storedprecudure的结构信息 |
| 还能增加,修改所有sql server object的内容。 |