您好,欢迎访问一九零五行业门户网

在.NET访问MySQL数据库经验总结

在.net中访问mysql,很多人采用的是mysql数据库官方所提供的.net connector,对其当然你也可以在相关的网站找到自己用得比较顺手的,以下的文章主要讲述的是.net访问mysql数据库经验。 在使用中积累了几点经验: 1).net访问mysql数据库经验:使用parameter参
在.net中访问mysql,很多人采用的是mysql数据库官方所提供的.net connector,对其当然你也可以在相关的网站找到自己用得比较顺手的,以下的文章主要讲述的是.net访问mysql数据库经验。
在使用中积累了几点经验:
1).net访问mysql数据库经验:使用parameter参数形式提交command时必须要把@号换成?号,这一点让我困惑了一天,只是不明白mysql为何要搞特殊呢,象ms、odp.net for oracle、oledb等方式,都
用@号的。
例子如下:
string connstr=setting.instance().getconnectionstring(mysql);  mysqlconnection conn =new mysqlconnection(connstr);  conn.open();  string query = insert into myfirst(id,name) values(?id,?name);  mysqlcommand cmd = new mysqlcommand(query, conn);  mysqlparameter para1=new mysqlparameter(?id,dbtype.int32); 
这里要注意必须要用?号
mysqlparameter para2=new mysqlparameter(?name,dbtype.string); 
这里要注意必须要用?号
para1.value=5;  para2.value=ddd;  cmd.parameters.add(para1);  cmd.parameters.add(para2);  cmd.executenonquery(); 
2).net访问mysql数据库经验:在mysql中也有保留字,为了提供兼容,我必须要找到定界符,好不容易在mysql的论坛里找到了,使用的定界符是`,这个符号不是单引号,而是键盘上数字1前面的那个“点”,真是害死我啊。
3).net访问mysql数据库经验:mysql中的top功能倒是非常简单,只需要语句后面使用“limit n”就行了,这比oracle的那rownum方便多了。
使用mysql 的.net connector访问mysql总体来说还算不错的,大部分是兼容.net中的iconnection、icommand的。
ps:有个不明白就是在.net connector中提供一个mysqldatetime类,不知道这个类具体有什么用,怎么用,在国内没有找到相关的资料。mysqldatetime跟system.date还不兼容,在mysql论坛上相关帖子n多。
如果采用string类型的parameter传递给mysql的datetime字段会报:unable to convert mysql date/time value to system.datetime 的错误。
其它类似信息

推荐信息