方法一:通过Microsoft.SQLDMO.Object组件就可以轻松完成此项工作:
首先如何找到Microsoft.SQLDMO.Object
1.如何在您得项目中能够使用SQLDMO组件?
菜单-项目-添加引用-COM-Microsoft.SQLDMO.Object
2.将该功能写成一个类:
using System;
using System.Collections;
using System.Collections.Specialized;
namespace JillZhang
{
/**//// <summary>
/// Summary description for SqlInfo.
/// </summary>
public class SqlInfo
{
成员变量#region 成员变量
private string _uid="";
private string _pwd="";
private StringCollection _serverList=new StringCollection();
private Hashtable _databaseList=new Hashtable();
#endregion
构造函数#region 构造函数
public SqlInfo()
{
this._serverList=GetSqlInstances();
if(this._serverList.Count>0)
{
foreach(string item in this._serverList)
{
this._databaseList.Add(item,this.GetAllDatabases(item));
}
}
}
public SqlInfo(string uid,string pwd)
{
this._uid=uid;
this._pwd=pwd;
this._serverList=GetSqlInstances();
if(this._serverList.Count>0)
{
foreach(string item in this._serverList)
{
this._databaseList.Add(item,this.GetAllDatabases(item));
}
}
}
#endregion
公共属性#region 公共属性
/**//// <summary>
/// 服务列表
/// </summary>
public StringCollection ServerList
{
get
{
return _serverList;
}
}
/**//// <summary>
/// 用于登录Sql server得用户名
/// </summary>
public string Uid
{
get
{
return _uid;
}
set
{
_uid=value;
}
}
/**//// <summary>
/// 用于登录得密码
/// </summary>
public string Pwd
{
get
{
return _pwd;
}
set
{
_pwd=value;
}
}
#endregion
事件方法#region 事件方法
/**//// <summary>
/// 获得服务列表
/// </summary>
/// <returns></returns>
public static System.Collections.Specialized.StringCollection GetSqlInstances()
{
//声明一个字符串链表,用于存放列表信息
System.Collections.Specialized.StringCollection instaces= new System.Collections.Specialized.StringCollection();
try
{
//以下代码是通过调用SQLDMO组件来实现获得服务列表
SQLDMO.Application sqlApplication= new SQLDMO.ApplicationClass();
SQLDMO.NameList sqlServerIntances=sqlApplication.ListAvailableSQLServers();
for(int i=0;i<sqlServerIntances.Count;i++)
{
object svr=sqlServerIntances.Item(i+1);//索引从1开始
if(svr!=null)
{
instaces.Add(svr.ToString());
}
}
return instaces;
}
catch
{
throw new Exception("未能获得Server得列表信息,请查看您得Sql server是否正在运行!");
}
}
/**//// <summary>
/// 获得Sqlserver 2000一个Server Instance上得数据库列表
/// </summary>
/// <param name="server">服务名称</param>
/// <param name="uid">登录用户</param>
/// <param name="pwd">登录密码</param>
/// <returns>数据库列表</returns>
public static System.Collections.Specialized.StringCollection GetAllDatabases(string server,string uid,string pwd)
{
System.Collections.Specialized.StringCollection databases= new System.Collections.Specialized.StringCollection();
try
{
SQLDMO.SQLServer sqlServer =new SQLDMO.SQLServerClass();
sqlServer.Connect(server,uid,pwd);
foreach(SQLDMO.Database db in sqlServer.Databases)
{
if(db.Name!=null)
{
databases.Add(db.Name);
}
}
return databases;
}
catch
{
throw new Exception("未能获得服务"+server+"上得数据库列表,可能您得服务器没有启动或者您得用户名或密码错误");
}
}
public System.Collections.Specialized.StringCollection GetAllDatabases(string server)
{
return GetAllDatabases(server,this._uid,this._pwd);
}
#endregion
}
}
方法二:运行SQL语句
select name from master..sysdatabases order by name asc
SqlConnection conn = new SqlConnection(connstr);
SqlDataReader dr;
SqlCommand comm = new SqlCommand("select name from master..sysdatabases order by name asc", connection);
conn.Open();
conn.ChangeDatabase("master");
dr = comm.ExecuteReader();
分享到:
相关推荐
ADO.NET是Microsoft开发的一种数据访问技术,用于与各种数据库进行交互,包括MySQL。在C#编程环境中,ADO.NET提供了一套完整的类库,使得开发者能够方便地创建、管理和执行SQL语句,以及处理数据库连接。在本例中,...
在本场景中,我们将深入探讨如何使用ADO.NET通过C#语言连接到SQL Server数据库,并利用app.config文件进行外部配置。 首先,为了连接SQL Server数据库,我们需要使用`SqlConnection`类,它是ADO.NET中的核心组件之...
描述:ASP.NET连接mysql数据库实例 知识点详解: 1. **MySQL在企业级应用中的地位**: MySQL作为一种开源数据库系统,因其高性能、稳定性及丰富的功能,已经成为众多大型企业如Google、美联社(The Associated ...
在.NET框架中,连接MySQL数据库通常涉及到使用MySQL的数据提供者——`MySql.Data.dll`库。这个库由Oracle公司提供,允许.NET开发者通过C#等语言与MySQL服务器进行交互。`MySql.Data.dll`提供了丰富的类和方法,使得...
在.NET 2008开发环境中,连接MySQL数据库通常需要借助特定的数据提供程序,即MySQL Data Provider for .NET。本文将详细介绍如何使用该驱动以及提供一个示例代码,帮助开发者理解并实现.NET 2008与MySQL之间的数据...
ASP.NET调用MySQL数据库是将.NET框架的ASP.NET应用程序与MySQL数据库进行交互的过程。这个过程通常涉及使用ADO.NET数据提供程序、ODBC或OLE DB连接,或者使用第三方库如MySql.Data.dll。以下是对这个主题的详细阐述...
本篇文章将详细阐述C# .NET连接MySQL数据库的三种主要方法,以及所需的文件和配置。 一、使用MySQL Connector/NET MySQL Connector/NET是MySQL官方提供的.NET数据提供程序,它允许C#应用直接与MySQL数据库进行通信...
在.NET开发环境中,与MySQL数据库进行交互通常需要借助特定的驱动程序,这使得应用程序能够执行SQL语句、读取数据以及管理数据库。标题提到的".net连接MYSQL驱动类"主要涉及两个关键的驱动类,它们是.NET Framework...
这个MySQLHelper类可以帮助开发者快速地集成MySQL数据库到ASP.NET应用中,减少重复的数据库连接和关闭代码,提高代码的可读性和可维护性。同时,为了提高安全性,建议使用参数化查询,避免SQL注入攻击。 在实际项目...
C# Ado.net实现读取SQLServer数据库存储过程列表及参数信息示例 本文主要介绍了使用C# Ado.net实现读取SQL Server数据库存储过程列表及参数信息的方法,通过实例形式总结分析了C#针对SQL Server数据库存储过程及...
ADO.NET提供了一组丰富的类,允许开发者高效地存取和管理各种类型的数据库,如SQL Server、Oracle、MySQL等。数据库连接、命令执行、数据读取等操作都可以通过这些类完成。 首先,我们需要理解ASP.NET中的页面生命...
本文将详细介绍如何彻底解决使用C# ASP.NET 应用程序连接 MySQL 数据库时出现的乱码问题。 #### 一、问题背景与分析 在开发基于 C# ASP.NET 的应用程序时,如果涉及到 MySQL 数据库的使用,可能会遇到中文字符显示...
在.NET框架中,连接MySQL数据库通常需要借助于MySQL的数据提供者——MySQL Data Provider for .NET。这个库使得.NET应用程序能够方便地与MySQL数据库进行交互。VS2005(Visual Studio 2005)是.NET开发的重要工具,...
.NET框架与MySQL数据库之间的交互主要依赖于特定的数据库驱动,这就是所谓的".NET MySql数据库驱动"。这个驱动程序允许开发者在C#、VB.NET或其他.NET支持的语言中编写代码,以执行SQL查询、操作数据以及管理MySQL...
.NET框架中的C#开发者在与MySQL数据库交互时,通常会依赖于特定的库来实现连接、查询和其他数据库操作。在本场景中,`MySql.Data.dll`是一个关键组件,它是MySQL针对.NET平台提供的官方驱动程序,名为“MySQL ...
例如,对于SQL Server数据库,一个典型的连接字符串可能如下所示: ```xml connectionString="Data Source=yourServerName;Initial Catalog=yourDatabaseName;User ID=yourUsername;Password=yourPassword;" ...
在本教程中,我们将探讨如何使用ASP.NET来管理MySQL数据库,这是一个常见的需求,特别是在跨平台或开源环境中。 首先,我们需要安装必要的组件。ASP.NET开发通常在Visual Studio中进行,而MySQL数据库则需要MySQL ...
由于提供的【部分内容】中大部分内容均为乱码,无法从中提取出有意义的IT知识点,但是根据标题“浅谈使用***和***访问SQL Server数据库.pdf”和【描述】中的重复标题,我们可以推断出本文档的主要内容。以下将围绕**...
它设计得与Sql .NET Data Provider类似,方便了那些熟悉Sql Server数据库的开发者。使用MySQLDriverCS时,无需ODBC数据源,而是直接创建和配置MySQLConnection对象来连接数据库,然后通过MySQLCommand执行SQL语句。 ...
1.实现EFcore连接本地Mysql数据库 2.最新版本的ASP.NET.CORE.Web API 3.实现dbfrist和code 。 4.博客链接:https://blog.csdn.net/EAyayaya/article/details/124048491 5. 不是MVC方式 6.Entity Framework Core ...