通过ODBC,.net1.1内置,1.0的话你就要安装ODBC的访问组件了

解决方案 »

  1.   

    asp.net(c#)是微软开发的,mysql是Linux下的开源项目,虽然现在好像有了win版本,
    这是冤家对头啊,如果微软支持了mysql,就是支持了一个非常便宜的Linux平台的数据库平台,
    许多人就选他了,那不是打击windows么?如果不是因为Oracle用户量大,我想微软连Oracle都不想支持.
      

  2.   

    能不能介绍一下MySQLDriverCS
      

  3.   


    采用MySQLDriverCS驱动的操作mysqlMySQLConnection conn = null;
    string tmp = null;
    string connstr = "Data Source=test;Password={2};User ID={1};Location={0};";
    connstr=String.Format(connstr,this._ServiceName.Text.Trim(),this._UserId.Text.Trim(),this._Password.Text.Trim());    
    string query=" drop table if exists dbtable "; try
    {
    string time1=System.DateTime.Now.ToString(); 
    conn =  new MySQLConnection(connstr);
    conn.Open();
    MySQLCommand cmd = new MySQLCommand(query, conn);
    cmd.ExecuteNonQuery();
    query="create table dbtable (id int ,col1 char(20) ,col2 char(20),col3 char(20) ) ";
    cmd.CommandText=query;
    cmd.ExecuteNonQuery();
    query = "insert into test.dbtable values(10, 'disksidkfsdi', 'asdfaf', 'adsfasdf')";
    cmd.CommandText=query;


    for(int i = 0; i < 1000; i++)
    {
    cmd.ExecuteNonQuery();
    }
    //cmd.Dispose();
    //conn.Close();
    query = "select * from test.dbtable";
    //MySQLCommand cmd2 = new MySQLCommand(query, conn);
    //conn.Open();
    cmd.CommandText=query; MySQLDataReader reader = cmd.ExecuteReaderEx();
    while(reader.Read())
    {
    tmp = reader[0].ToString();
    tmp = reader[1].ToString();
    tmp = reader[2].ToString();
    tmp = reader[3].ToString();
    }
    reader.Close();
    //conn.Close();
    query = "delete from test.dbtable";
    cmd.CommandText =query;
    //MySQLCommand cmd3 = new MySQLCommand(query, conn);
    //conn.Open();
    cmd.ExecuteNonQuery();

    query=" drop table if exists dbtable ";
    cmd.CommandText =query;
    cmd.ExecuteNonQuery();
    cmd.Dispose();
    MessageBox.Show(time1+"---" +System.DateTime.Now.ToString(),"操作完成!"); 
    }
    catch(Exception ex)
    {
    MessageBox.Show(ex.Message);
    }
    finally
    {
    conn.Close();

    }
      

  4.   

    采用 ODBC.net 操作mysql
    注意不但要装odbc.net 还要装 MySQL ODBC 3.51 驱动.Microsoft.Data.Odbc.OdbcConnection conn=null;
    string tmp = null;
    string constr="DRIVER={MySQL ODBC 3.51 Driver};DATABASE=test;SERVER="+
    this._ServiceName.Text.Trim()+";UID="+this._UserId.Text.Trim()+
    ";PASSWORD="+this._Password.Text+
    ";PORT=3306;OPTION=149515;";
     
    string query=" drop table if exists dbtable ";
    try
    {

    string time1=System.DateTime.Now.ToString(); 
    conn =  new OdbcConnection(constr);
    conn.Open();
    OdbcCommand cmd = new OdbcCommand(query, conn);
    cmd.ExecuteNonQuery();
    query="create table dbtable (id int ,col1 char(20) ,col2 char(20),col3 char(20) ) ";
    cmd.CommandText=query;
    cmd.ExecuteNonQuery();
    query = "insert into test.dbtable values(10,'disksidkfsdi', 'asdfaf', 'adsfasdf')";
    cmd.CommandText=query; 
    for(int i = 0; i < 1000; i++)
    {
    cmd.ExecuteNonQuery();
    }
    //cmd.Dispose();
    //conn.Close();
    query = "select * from test.dbtable";
    //OdbcCommand cmd2 = new OdbcCommand(query, conn);
    //conn.Open();
    cmd.CommandText=query;
    OdbcDataReader reader = cmd.ExecuteReader();
    while(reader.Read())
    {
    tmp = reader[0].ToString();
    tmp = reader[1].ToString();
    tmp = reader[2].ToString();
    tmp = reader[3].ToString();
    }
    reader.Close();
    //conn.Close();
    query = "delete from test.dbtable";
    cmd.CommandText=query;
    //OdbcCommand cmd3 = new OdbcCommand(query, conn);
    //conn.Open();
    cmd.ExecuteNonQuery();
    query=" drop table if exists dbtable ";
    cmd.CommandText=query;
    cmd.ExecuteNonQuery();
    cmd.Dispose(); MessageBox.Show(time1+"---" +System.DateTime.Now.ToString(),"操作完成!"); 
    }
    catch(Exception ex)
    {
    MessageBox.Show(ex.Message);
    }
    finally
    {
    conn.Close();
    }
      

  5.   

    谢谢!
    我采用MySQLDriverCS驱动的操作mysql 可提示  编译器错误信息: CS0246: 找不到类型或命名空间名称“MySQLConnection”(是否缺少
    using 指令或程序集引用?)
    我也加
    using eInfoDesigns.dbProvider.MySqlClient;   还是不行
      

  6.   

    你使用MySQLDriverCS驱动,首先必须先安装MySQLDriverCS驱动,然后要在项目中引用.还有要在源码中引用:using MySQLDriverCS;
      

  7.   

    MySQLDriverCS驱动已经装了,可引用 using MySQLDriverCS;就会出错
      

  8.   

    ODBC 
     Local database:"Driver={mySQL};Server=mySrvName;Option=16834;Database=mydatabase;"  Remote database:"Driver={mySQL};Server=data.domain.com;Port=3306;Option=131072;Stmt=;Database=my-database;Uid=username;Pwd=password;"  OLE DB, OleDbConnection (.NET) 
     Standard:"Provider=MySQLProv;Data Source=mydb;User Id=UserName;Password=asdasd;" 
     MySqlConnection (.NET) 
     eInfoDesigns.dbProvider:"Data Source=server;Database=mydb;User ID=username;Password=pwd;Command Logging=false" 
    This one is used with eInfoDesigns dbProvider, an add-on to .NET
     Declare the MySqlConnection:C#:
    using eInfoDesigns.dbProvider.MySqlClient;
    MySqlConnection oMySqlConn = new MySqlConnection();
    oMySqlConn.ConnectionString = "my connectionstring";
    oMySqlConn.Open(); VB.NET:
    Imports eInfoDesigns.dbProvider.MySqlClient
    Dim oMySqlConn As MySqlConnection = New MySqlConnection()
    oMySqlConn.ConnectionString = "my connectionstring"
    oMySqlConn.Open()  SevenObjects MySqlClient (.NET) 
     Standard:"Host=server; UserName=myusername; Password=mypassword;Database=mydb;" 
    This is a freeware ADO.Net data provider from SevenObjects
     Core Labs MySQLDirect (.NET) 
     Standard:"User ID=root; Password=pwd; Host=localhost; Port=3306; Database=test;Direct=true; Protocol=TCP; Compress=false; Pooling=true; Min Pool Size=0;Max Pool Size=100; Connection Lifetime=0" 
    Read more at Core Lab and the product page.
      

  9.   

    C#:
    using eInfoDesigns.dbProvider.MySqlClient;
    会出错啊