ホームページ  >  記事  >  データベース  >  在.NET环境下正确的访问MySQL数据库操作流程

在.NET环境下正确的访问MySQL数据库操作流程

WBOY
WBOYオリジナル
2016-06-07 16:11:35847ブラウズ

以下的文章主要介绍的是如何在.NET环境下正确的访问MySQL数据库,如果你对MySQL(和PHP搭配之最佳组合)有所了解的话,你就会知道它对事务处理是不支持的,存储过程,但是它提供的功能一定能满足你的大部分需求。 另外,简洁的MySQL(和PHP搭配之最佳组合)也有

以下的文章主要介绍的是如何在.NET环境下正确的访问MySQL数据库,如果你对MySQL(和PHP搭配之最佳组合)有所了解的话,你就会知道它对事务处理是不支持的,存储过程,但是它提供的功能一定能满足你的大部分需求。

另外,简洁的MySQL(和PHP搭配之最佳组合)也有一些它独到的优势,在有些时候,它的速度甚至超过大型数据库。

那么如何在.NET中访问MySQL(和PHP搭配之最佳组合)数据库呢?

也许很多人马上会说:

用OLEDB嘛,但是事实上采用.NET OleDb Data Provider并不能访问MySQL(和PHP搭配之最佳组合),如果你使用的话,系统会提示你:“Net Data OLE DB 提供程序 (System.Data.Odbc) 不支持 MSDASQL 提供程序(用于 Odbc 驱动程序的 Microsoft OLE DB 提供程序)。”,是什么原因我并不知道,按照MySQL(和PHP搭配之最佳组合)DriverCS的作者的说法就是它被“abandoned by the owner”,呵呵,兴许还有些故事。

幸好,我们还有其它的选择,这里就要介绍两种访问MySQL(和PHP搭配之最佳组合)数据库的办法。

使用ODBC.NET

ODBC.NET(全称ODBC .NET Data Provider)是一个免费的.NET Framework附加组件,需要到微软公司的网站上去下载,它需要系统已经安装MDAC 2.7或者更高版本。另外,还需要安装MySQL(和PHP搭配之最佳组合)的ODBC驱动程序,下载地址为:http://www.MySQL(和PHP搭配之最佳组合).com/downloads/api-myodbc-2.50.html,还需要在"ODBC数据源管理器"中配置一下DSN,

(和PHP搭配之最佳组合)数据库" width="450" height="369" />

在对象的设计上,ODBC.NET也跟OLEDB,SQL等一样,分别为OdbcConnection, OdbcCommand, OdbcDataAdapter,OdbcDataReader,用法也完全一样,如果你希望用ODBC .NET来代替以前的OleDb .NET Data Provider,事实上完全可以通过查找替换的办法来修改你的程序。

以下是一段代码示例:

<ol class="dp-xml"><li class="alt"><span><span>try{string </span><span class="attribute">constr</span><span> = </span><span class="attribute-value">"DSN=MySQL(和PHP搭配之最佳组合);<br>"</span><span> + "</span><span class="attribute">UID</span><span>=;" +"</span><span class="attribute">PWD</span><span>="; ;conn = new OdbcConnection(constr);<br>conn.Open();string query = "</span><span class="attribute-value">insert</span><span> into test.dbtable values10,<br>'disksidkfsdi', 'asdfaf', 'adsfasdf')";string </span><span class="attribute">tmp</span><span> = </span><span class="attribute-value">null</span><span>;<br>OdbcCommand </span><span class="attribute">cmd</span><span> = </span><span class="attribute-value">new</span><span> OdbcCommand(query, conn);for(int </span><span class="attribute">i</span><span> = </span><span class="attribute-value">0</span><span>; <br>i </span><span class="tag"><span> </span><span class="tag-name">100000</span><span>; i++){cmd.ExecuteNonQuery();}cmd.Dispose();conn.Close();<br></span><span class="attribute">query</span><span> = </span><span class="attribute-value">"select * from test.dbtable"</span><span>;OdbcCommand </span><span class="attribute">cmd2</span><span> = <br></span><span class="attribute-value">newOdbcCommand</span><span>(query, conn);conn.Open();OdbcDataReader </span><span class="attribute">reader</span><span> = </span><span class="attribute-value">cmd2</span><span>.ExecuteReader();<br>while(reader.Read()){</span><span class="attribute">tmp</span><span> = </span><span class="attribute-value">reader</span><span>[0].ToString();</span><span class="attribute">tmp</span><span> = </span><span class="attribute-value">reader</span><span>[1].ToString();</span><span class="attribute">tmp</span><span> = </span><span class="attribute-value">reader</span><span>[2].ToString();<br></span><span class="attribute">tmp</span><span> = </span><span class="attribute-value">reader</span><span>[3].ToString();}conn.Close();</span><span class="attribute">query</span><span> = </span><span class="attribute-value">"delete from test.dbtable"</span><span>;<br>OdbcCommand </span><span class="attribute">cmd3</span><span> = </span><span class="attribute-value">newOdbcCommand</span><span>(query, conn);conn.Open();<br>cmd3.ExecuteNonQuery();}catch(Exception ex){MessageBox.Show(ex.Message);}finally{conn.Close(); }  </span></span></span></li></ol>

只要是用C#写过数据库应用的人一定能知道,上面的代码执行了十万次插入数据和读取数据,最后将数据记录全部删除的操作。

以上的相关内容就是对在.NET环境下访问MySQL数据库的介绍,望你能有所收获。
 


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。