获取SQLServer数据库中所有表

对于获取SQLSERVER数据库中所有表,首先第一步引有SQLDMO.dll

找到文件路径: C:\Program   Files\Microsoft   SQL   Server\80\Tools\Binn\SQLDMO.dll

找到SQLDOM.DLL

//在后台写方法

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SQLDMO; 

public partial class SQLaspx : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        GetTables_DOM("SQLSERVERName(服务器名)", "用户名", "密码", "要找的数据库名(或master mode 或自已建立的)");
    }
    private void GetTables_DOM(string strServerName, string strUser, string strPWD, string strDatabase)
    {
        SQLDMO.SQLServer Server = new SQLDMO.SQLServerClass(); //实例数据服务对象
        //连接到服务器
        Server.Connect(strServerName,strUser,strPWD);
        //对所有数据库遍历史,获得指定数据库
        for (int i = 0; i < Server.Databases.Count; i++)
        {
            //判断当前数据库是否是指定的数据库
            if (Server.Databases.Item(i + 1, "dbo").Name == strDatabase)
            {
                //获得指定数据库
                SQLDMO._Database  db = Server.Databases.Item(i+1,"dbo");
                //获得指定数据中的所有表
                for (int j = 0; j < db.Tables.Count; j++)
                {

                    Response.Write(db.Tables.Item(j+1,"db0").Name+"<br/>");//打印输出!!
                }

            }
        }
    }
}

打印输出以下表..

希望对大家有用!

posted @ 2012-01-17 10:15  KyrieYang  阅读(1972)  评论(0编辑  收藏  举报