平常我们只听说过ADO等一类ASP对象,但在ASP中还有个鲜为人知的专门SQL Server的ASP访问对象,它就是SQLOLE.SQLServer对象。SQLOLE.SQLServer可以直接访问SQL Server的系统属性。以Set oSQLServer = CreateObject ("SQLOLE.SQLServer")语句将产生一个SQL Server服务器对象。 ---- 若要查看此服务器中数据库的集合,可用语句: For Each SQLDB In oSQLServer.Databases Response.Write SQLDB.Name ‘将列出所有的数据库,如Pubs等 Next ---- 若要查看某数据库中(如PUBS数据库)数据表的集合,可用语句: pubDatabase=oSQLServer.Databases(“pubs”) ’oSQLServer是前面创建的SQL Server服务器对象 For Each DBTable In pubDatabase.Tables Response.Write DBTable.Name Next ---- 下面的语句将列出数据库中(PUBS数据库)数据视图 pubDatabase =oSQLServer.Databases(“pubs”) ’oSQLServer是前面创建的SQL Server服务器对象 For Each DBView In pubDatabase.Views Response.Write DBView.Text Next ---- 以下语句将列出数据库中(PUBS数据库)存贮过程 pubDatabase =oSQLServer.Databases(“pubs”) ’oSQLServer是前面创建的SQL Server服务器对象 For Each DBSP In pubDatabase.StoredProcedures Response.Write DBSP.Text Next ---- 程序运行的结果(取数据表名): ---- 取存贮过程的结果: ---- 一个完整的小例子源码附后(其它功能读者可加入)。 < %@ LANGUAGE = VBScript % > < HTML > < HEAD > < META NAME="GENERATOR" Content= "Microsoft Developer Studio" > < META HTTP-EQUIV="Content-Type" content="text/html; charset=gb2312" > < TITLE >< /TITLE > < /HEAD > < % On Error Resume Next Dim oSQLServer Set oSQLServer = CreateObject ("SQLOLE.SQLServer") strServer = "dep" strLogin = "sa" strPwd = "" oSQLServer.Connect strServer,strLogin,strPwd % > < BODY BGCOLOR=#ffffff > 数据库列表 < SELECT NAME="Database" > < % For Each SQLDB In oSQLServer.Databases If Not SQLDB.SystemObject Then Response.Write "< OPTION VALUE= """ & SQLDB.Name & """ >" & SQLDB.Name & " " End If Next Set oSQLServer = Nothing % > < /SELECT > < /BODY > < /HTML >