在NET中一直使用Sql Server做数据库前几天学习通过JDBC使用Java连接MySql数据库我就想NET是否同样可以使用MySql数据库呢?答案是肯定的方法也很简单在这里我使用C#作为编程语言将自己整理出来的方法同大家一起分享
欲在NET中使用MySql数据库其步骤是
下载MySql驱动包
引用驱动包中已经编译好的MySql类组件
编写代码
步骤一下载MySql驱动包
在我写篇文章的时候最新的驱动包是支持Visual Studio 官方下载地址是
步骤二引入组件
下载的文件是一个压缩文件将其解压缩到本地磁盘找到bin文件夹中的MySqlDatadll文件这个就是我们要引用的组件通过Visual Studio将其引用到你的项目中
)thiswidth=; height=>
步骤三编码我编写了一个控制台的示例并将重要的部分都添加了注释代码如下
/**//**
* 程序名称使用NET连接MySql数据库
* 作者吴磊
* 日期年月日
*/
// 使用MySqlDataMySqlClient命名空间
using System;
using MySqlDataMySqlClient;
namespace Project_Personneldb
{
class dbManage
{
/**////
/// 连接到MySql数据库并返回连接对象
///
/// 数据库连接对象
private static MySqlConnection getCon()
{
MySqlConnection myCon = null;
try
{
/**//*
* Server:数据库服务器localhost表示本机
* Database:数据库名称school表示mySql中一个名为school的数据库
* Uid:用户名
* Pwd:密码
* CharSet:使用的字符编码不设置可能产生乱码
*/
myCon = new MySqlConnection(Server=localhost;Database=school;
Uid=root;Pwd=;CharSet=utf;)
myConOpen()
}
catch (MySqlException e)
{
//抛出连接MySql数据库的异常
throw new Exception(eMessage)
}
return myCon;
}
public static void Main()
{
try
{
//从shool表中检索数据的sql语句(别误会我是在school数据库中建立了一个school表)
MySqlCommand myCmd = new MySqlCommand(select * from school getCon())
//执行检索语句并将执行结果赋值给MySqlDataReader对象
MySqlDataReader myReader = myCmdExecuteReader()
//进行读取
while (myReaderRead())
{
//myReader的FieldCount属性表示列数
for (int i = ; i < myReaderFieldCount; i++)
{
/**//*
* 提示如果使用此if语句会产生异常数据为空不能对空值调用此方法或属性
* 判断索引为i的列中的值是否为空如果为空输出NULL
*/
if (!myReader[i]Equals(DBNullValue))
{
ConsoleWrite({} myReader[i])
}
else
{
ConsoleWrite({} Null)
}
}
//换行
ConsoleWriteLine()
}
}
//捕获MySql异常
catch (MySqlException e)
{
ConsoleWriteLine(eMessage)
}
//捕获其他异常
catch (Exception e)
{
ConsoleWriteLine(eMessage)
}
finally
{
ConsoleReadKey()
}
}
}
}