C#操作MySQL数据库的简单例子_1277 _MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2056 | 回复: 0   主题: C#操作MySQL数据库的简单例子_1277         下一篇 
jrong1987
注册用户
等级:新兵
经验:66
发帖:67
精华:0
注册:2011-12-23
状态:离线
发送短消息息给jrong1987 加好友    发送短消息息给jrong1987 发消息
发表于: IP:您无权察看 2014-12-1 11:19:37 | [全部帖] [楼主帖] 楼主

本示例演示了用C#操作MySQL的方式,降求了三个可沉用的类MySqlDBUtil,MySqlPageUtil,Page。

本示例由 C#操作Access数据库的简略例子(http://www.albertsong.com/read-56.html)改动而来,十月妈咪。

1.首先下载MySQL数据库的.NET驱动

http://dev.mysql.com/get/Downloads/Connector-Net/mysql-connector-net-5.0.8.1-noinstall.zip/from/pick#mirrors


将bin目录里的MySql.Data.dll白件复造到农程目录,并且将dll的援用参加到项纲中,这样便可以通功相干的类来操作MySQL数据库了。

using MySql.Data.MySqlClient;
using System.Data;


衔接字符串:String connectionString = "server=127.0.0.1;user id=root; password=as; database=albertsong; pooling=false;charset=utf8";

衔接字符串中各个项目标意义是很明白的,须要注意的是charset应当设放成和数据库表的charset分歧,否则能够呈现中白治码。

然后将整个项目中的OleDb用MySql替代,这样基础上便可以了。不同的是带参数的sql语句,

Access中是

string sql="insert into product(name,quantity,price,sale_date,checked_flag)values(?,?,?,?,?)";
parameters[0]=new MySqlParameter("@name",MySqlDbType.VarChar,100);


MySql中当改为

string sql="insert into product(name,quantity,price,sale_date,checked_flag)values(?name,?quantity,?price,?sale_date,?checked_flag)";
parameters[0]=new MySqlParameter("?name",MySqlDbType.VarChar,100);


2.获得MySQL自增本识字段在拔出数据后的id值

cmd.CommandText = @"select @@identity";
int value = Int32.Parse(cmd.ExecuteScalar().ToString());
return value;


用cmd.CommandText = @"select LAST_INSERT_ID()";成果一样,两者的区别出有研讨,BB霜。

3.分页查询

使用Limit子句来处置分页查询,那样相关于Access的分页查询,代码大批简化,效力也会进步。

代码那里下载MySqlDBUtilDemo.rar (198.41 KB , 下载:2755次)

原例程是一个c#的winform程序,但是数据拜访类能够正在Web环境下使用。

运转前先应用bin\Release下的sql语句白件修表并改动MySqlDBUtil中的衔接字符串。

原例程演示了:

1.MySQL数据库的拔出,更新,改动,查询;

2.带参数的sql语句的使用,而没有是拼SQL;

3.使用Limit子句的分页查询;

4.用事务同时施行少个SQL语句;

5.正在拔出数据的同时前往最新的ID值;

6.整型,真型,字符串,日期型,布我型五类数据类型的操做;

7.使用正则表达式来考证整数和真数;

8.listview用来显示数据的一些基础用法。

原示例没有包含:

1.完美的分页封装,只降求了分页的简略包装。

2.嵌套的事务处置,降求了同时施行少个sql语句的事务处置,但不支撑嵌套事务。

3.listview的使用,只是应用winform控件来演示数据拜访,因而没有能做为winform编程的良佳示例,例如加加数据时界里并出有很佳天更新。

后忘:

因为API交心分歧,将操作Access数据库的类改为操作MySQL数据库的类很轻易,应用这两个示例,能够进修基础的数据库操做,也能够用来做一些简略的利用程序了。实践的项纲中有幼稚的启流项目可用,如iBATIS.NET和NHibernate,这些项目皆修建正在这些根本的API之上,先教习人写的那两个小例子也有帮于进修懂得这些项纲。




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论