使用SQLDMO从SQLServer中获取信息
2007-11-11 09:44:57 来源:WEB开发网核心提示:提要:ms sql server(WINDOWS平台上强大的数据库平台)提供了一个非常方便的COM组件“SQLDMO”来帮助我们获取和管理sql server(WINDOWS平台上强大的数据库平台),在这里提供一些想法和实现,使用SQLDMO从SQLServer中获取信息,系统要求:windows2000serverv
提要:
ms sql server(WINDOWS平台上强大的数据库平台)提供了一个非常方便的COM组件“SQLDMO”来帮助我们获取和管理sql server(WINDOWS平台上强大的数据库平台)。在这里提供一些想法和实现。
系统要求:
windows2000server
vs.net rc3
sql server(WINDOWS平台上强大的数据库平台) 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 MySQL(和PHP搭配之最佳组合)svr = new rc3sqldmo.sqlserver2class();
MySQL(和PHP搭配之最佳组合)svr .connect("sqlservername","uid","pws");
获得数据库信息:
rc3sqldmo.databases mydbs=MySQL(和PHP搭配之最佳组合)svr.databases;
rc3sqldmo.database2 mydb =new rc3sqldmo.database2class();
mydb=mydbs.item("dbname","owner"); 或mydb=MySQL(和PHP搭配之最佳组合)svr.databases.item("dbname","owner");
获得表和字段的信息:
rc3sqldmo.Tables mytbls= MySQL(和PHP搭配之最佳组合)svr.databases.item("dbname","owner").tables;
rc3sqldmo.table2 mytbl = new rc3sqldmo.table2class();
mytbl = mytbls.item("tablename","owner");或
mytbl = MySQL(和PHP搭配之最佳组合)svr.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 =MySQL(和PHP搭配之最佳组合)svr.batabase.itrm("dbname",owner).storedprecudures.item[B("spname",owner)]
用途的讨论:
动态管理sql server(WINDOWS平台上强大的数据库平台)
动态获得table,storedprecudure的结构信息
还能增加,修改所有sql server(WINDOWS平台上强大的数据库平台) object的内容。
更多精彩
赞助商链接