MySQL 和 .Net2.0配合使用

來源:互聯網
上載者:User
MySql現在的最新版本是5.x.第一次接觸它是在大二的時候,用php,那時好像還是4.x版本。

Mysql5增加很多新的功能,開始支援:預存程序、觸發器、視圖、資訊架構視圖等...

MySql在安裝時一如既往的比較複雜,往往就是一個失敗的提示,沒有什麼其它提示原因。

這是一篇文章,比較MySql和SqlServer的,http://htm.winsteps.net/database/331.htm

MySql中文網站http://www.mysql.cn/上資料很少,大多是些安裝協助。
要查資料還是去MySql的網站http://www.mysql.com/。

MySql現在有提供的各種串連工具(http://dev.mysql.com/downloads/connector/),.net下可以用的有Connector/ODBC和Connector/Net。

ODBC串連效率可能稍低,最好還是用Net直接的串連
這篇文章介紹了各種串連方法http://www.mysql.com/news-and-events/press-release/release_2002_10.html

1:ODBC串連
      現在的版本是3.51,安裝之後,可以這樣操作:
    

          // string conStr = "DRIVER = {MySQL ODBC 3.51 Driver}; SERVER = localhost; DATABASE =test; UID = root; PASSWORD=;";

             //string conStr = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=test;USER=root;PASSWORD=;OPTION=3;";
            string conStr = "provider = MySQL ODBC 3.51 Driver; SERVER = localhost; DATABASE =test; UID = root; PASSWORD=;";

            try
            {
                OleDbConnection  connection = new OleDbConnection(conStr);
               connection.Open();
            }
            catch(Exception ex)
            {
              MessageBox.Show(ex.Message);
            }

2:Net串連:
     MySQL Connector Net 1.0.7:有net1.0;net.1;net2.0;mono1.0四個版本的connector。免費
     CoreLab.MySql 3.5:這是個商業的版本,試用期30天。

    下邊的代碼是使用MySQL Connector Net 的例子。注意:他的Parameter的首碼是“?”而不是“@”。這個問題比較特殊。CoreLab裡面的Parameter的首碼就是“@”.
    

 string connStr = String.Format("server={0};user id={1}; password={2}; database={3}; pooling=false;port=3308", "localhost", "root", "", "test");
            try
            {
                MySqlConnection myConn = new MySqlConnection(connStr);
                myConn.Open();
                MySqlCommand cmd = myConn.CreateCommand();
                
                cmd.Parameters.Add("?DocName", MySqlDbType.VarChar, 50);
                cmd.Parameters[0].Value = "test by code";
                cmd.Parameters[0].SourceColumn = "DocName";
                cmd.CommandText = "update t_docs set DocName=?DocName where DocId=4";
                cmd.ExecuteNonQuery();

這是使用一個ORM時設定provider的例子CustomProvider mysqlProvider = new CustomProvider("MySql.Data", "MySql.Data.MySqlClient.MySqlConnection", "MySql.Data.MySqlClient.MySqlDataAdapter");
                        mysqlProvider.StartDelimiter = "";//default is "/""
                        mysqlProvider.EndDelimiter = "";//default is "/""
                        mysqlProvider.ParameterPrefix = "?";//設定參數首碼
                        mysqlProvider.SelectPageQuery = "SELECT * LIMIT {0} OFFSET {1}";//設定分頁演算法
                        mysqlProvider.IdentityQuery = "SELECT LAST_INSERT_ID()";//設定擷取剛剛插入記錄Id的函數

3:OLE串連:
      現在還沒有來自官方的支援。

在vs2005中,直接引用for .net2.0版本的dll即可。至於那個商業版,就得費些功夫了,需要一個許可檔案(拖動一個Conection組件到Form上就能自動建立該許可)

附,連接字串可以到這裡查詢http://www.connectionstrings.com/, 夠全的了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.