Asp.net连接MySql数据库
之前网站一直用的Asp.net+MSSQL 2000的数据库,结果新的项目说MSSQL数据库太贵,需要改用MySql,改之。
Connector/Net 6.3.5
http://www.mysql.com/downloads/connector/net/
最新版数据库连接器下载地址:http://mysql.stu.edu.tw/Downloads/Connector-Net/mysql-connector-net-6.3.5.zip
安装以后,在项目中引入对应动态链接库MySql.net、及using命名空间:MySql.Data.MySqlClient(这个代码中已经引入)
http://www.mysql.com/downloads/connector/net/
最新版数据库连接器下载地址:http://mysql.stu.edu.tw/Downloads/Connector-Net/mysql-connector-net-6.3.5.zip
安装以后,在项目中引入对应动态链接库MySql.net、及using命名空间:MySql.Data.MySqlClient(这个代码中已经引入)
自此之前MSSQL代码中 语句,只需要查找Sql全部替换为MySql,即可,之前可以用SqlServer数据库的代码,直接可以用MySql数据库了。
出现问题1:"找不到请求的 .Net Framework 数据提供程序。可能没有安装。"错误
采用上面将整个项目中的Sql替换为MySql的方式,在本地测试页面没问题,但提交
这一部分在服务器上如何操作。?!!在开发阶段,通过安装mysql-connector-net-6.3.5.zip的方式,开发是没问题的。
但如果部署到服务器上时,由于服务器未安装此connector可能会出现问题。
解决方法:参考:http://www.cnblogs.com/scottckt/archive/2009/12/30/1636475.html
在web.config中加入如下代码,解决提示“找不到请求的 .Net Framework 数据提供程序。可能没有安装。”的问题。
<!--MySql使用-->
<system.data>
<DbProviderFactories>
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.3.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
<system.data>
<DbProviderFactories>
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.3.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
问题 解决!
如果你的版本不是6.3.5.0,只需修改上面代码中的Version=版本即可。
额外阅读:asp.net2.0利用MySQL ODBC Driver-MyODBC 3.51连接MYSQL数据库技巧