如何设置MySQL以使用C#?

时间:2008-12-11 16:10:25

标签: c# mysql odbc

我的任务是为旧网站创建新的前端。

它是用php(pre-oo)编写的,并使用MySQL数据库。托管提供.Net包,但不提供Ms Sql Server。

这很好,因为数据库工作正常,但我真的想使用Asp.net作为页面。但是,我从C#连接到MySQL时看到的大多数教程都需要安装专门用于MySQL的ODBC驱动程序。不控制托管环境,我怀疑我能做到这一点:)

您是否有任何见解可以分享这个问题?

2 个答案:

答案 0 :(得分:9)

MySql对.Net有connector。您不需要使用ODBC,

MySql Connector将允许您与MySql数据库进行交互,并且是完全托管的ADO.Net提供程序。如果需要,您可以使用二进制(dll)或源代码。这很简单,一旦你导入了dll,你只需要一个连接字符串(用户名,密码,位置),你就会被设置好!

以下是代码示例(参考:bitdaddy.com):

string MyConString = "SERVER=localhost;" +
    "DATABASE=mydatabase;" +
    "UID=testuser;" +
    "PASSWORD=testpassword;";
MySqlConnection connection = new MySqlConnection(MyConString);
MySqlCommand command = connection.CreateCommand();
MySqlDataReader Reader;
command.CommandText = "select * from mycustomers";
connection.Open();
Reader = command.ExecuteReader();
while (Reader.Read())
{
    string thisrow = "";
    for (int i= 0;i<Reader.FieldCount;i++)
            thisrow+=Reader.GetValue(i).ToString() + ",";
    listBox1.Items.Add(thisrow);
}
connection.Close();

我建议你不要把你的代码和持久性放在同一个地方,并将你的连接字符串放在你的App.Config中,但我想这会告诉你如何去做。

答案 1 :(得分:0)

同意Patrick Desjardins,并且想补充一点,与MySQL交互的最简单方法是

  1. 获取MySQL connector for .Net v6.0 - 这有支持 Entity Framework
  2. 使用创建数据模型图层 ADO.Net实体模型进行交互 与数据库
  3. OR

    您还可以查看Linq to MySQL provider实施情况 - 这非常好。

    当我有类似的要求时,我选择了以前的选项。