ashx连接mysql_对C#中的web访问mysql数据库的一些知识点进行了整理归纳总结

基本对比

使用方式

使用场合

优缺点

是否需要安装

需要的dll网址

引用方式

程序内引用

程序初期确定使用MySql,前期添加引用

大多数情况下使用在类文件内,多数使用于aspx,ashx等带有后置代码的类文件中

可以安装,也可以直接引用dll 多数情况下直接引用即可

web.config引用

后期维护接口发现程序内需要使用,这时不方便更改原有程序引用

多数时候使用于没有后置代码的aspx、ashx等文件上

ODBC方式

配置系统内数据源

程序创建初期,后期均可以使用

适用于页面文件(aspx、ashx),也适用于带有后置代码的类文件(aspx.cs、ashx.cs) 这样程序调用的时候多数要使用ado.net的odbc对象

必须安装

一、使用引用方式1.1 程序内引用

使用前提:(使用一种即可)

1. 在web程序中,引用—》添加引用—》程序集—》扩展下,前提是安装了mysql-connector-net

2. 手工下载MySql.Data.dll,然后添加引用

注意:这种方式一般使用于存有“代码后置”的页面文件aspx(aspx.cs)、ashx(ashx.cs)使用:

1.添加引用:using MySql.Data. MySqlClient;

2.现在页面就可以使用了

测试代码:

代码如下:

System.Data.DataSet ds = new System.Data.DataSet();

string connStr = @"Database=testss;Data Source=172.168.0.234;User Id=root;Password=shinevod";

string sqlList = "select * from sms_outbox";

try

{

using (MySql.Data.MySqlClient.MySqlDataAdapter dataAapter = new MySql.Data.MySqlClient.MySqlDataAdapter(sqlList, connStr))

{

dataAapter.Fill(ds);

Response.Write(ds.GetXml());

}

}

catch

{ }

1.2 web.config方式引用使用前提:(使用一种即可)

1. 在web程序中,引用—》添加引用—》程序集—》扩展下,前提是安装了mysql-connector-net

2. 手工下载MySql.Data.dll,然后添加引用(这种情况一般选用这个比较方便,不需要安装)

注意:如果已经完成的项目突然有数据库mysql接口的需求,又不能在服务器上随便安装程序(主要是怕影响其他软件),一般使用于代码没有后置的网页文件如aspx,ashx使用:

1. 手工下载MySql.Data.dll,放置网站bin下(如果没有安装mysql-connector-net)

2.在网站的web.config中添加节点(版本号根据自己使用的适当变换)

代码如下:

3.这时网页上可以使用了

代码如下:

System.Data.DataSet ds = new System.Data.DataSet();

string connStr = @"Database=testss;Data Source=172.168.0.234;User Id=root;Password=shinevod";

string sqlList = "select * from sms_outbox";

try

{

using (MySql.Data.MySqlClient.MySqlDataAdapter dataAapter = new MySql.Data.MySqlClient.MySqlDataAdapter(sqlList, connStr))

{

dataAapter.Fill(ds);

Response.Write(ds.GetXml());

}

}

catch

{ }

二、使用ODBC方式2.1 配置系统数据源使用前提:下载: http://dev.mysql.com/downloads/connector/odbc/,之后进行安装

注意:下载时候使用的版本号,以及操作系统(主要指windows)位数使用:

1.添加系统数据源win7(其他的系统差不多):“控制面板”—》“管理工具”—》“数据源(ODBC)”—》用户DSN—》添加

c1aa0245a8c453ed2ed87e41748f908e.png

2. 程序调用

代码如下:

System.Data.DataSet ds = new System.Data.DataSet();

string str = @"DSN=mysqltest";//设置Connection属性,使用MySql DSN

string sqlList = "select * from sms_outbox";

try

{

using (System.Data.Odbc.OdbcDataAdapter dataAdapter = new System.Data.Odbc.OdbcDataAdapter(sqlList, str))

{

dataAdapter.Fill(ds);

Response.Write(ds.GetXml());

}

}

catch (Exception ex)

{ Response.Write(ex.ToString()); }

2.2 程序内调用驱动使用前提:下载: http://dev.mysql.com/downloads/connector/odbc/,之后进行安装

注意:下载时候使用的版本号,以及操作系统(主要指windows)位数使用:

1.安装odbc成功后,程序直接调用

代码如下:

System.Data.DataSet ds = new System.Data.DataSet();

string strCon = @"Driver=MySql ODBC 5.2 Unicode Driver;Server=172.168.0.234;Database=testss;UID=root;pwd=shinevod";

string sqlList1 = "select * from sms_outbox";

try

{

using (System.Data.Odbc.OdbcDataAdapter dataAdapter = new System.Data.Odbc.OdbcDataAdapter(sqlList1, strCon))

{

dataAdapter.Fill(ds);

Response.Write(ds.GetXml());

}

}

catch (Exception ex)

{ Response.Write(ex.ToString()); }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/433017.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql -b -e_MySQL 的B+树索引.

一、B树索引概述索引是应用程序设计和开发的一个重要方面。若索引太多,应用程序的性能可能会受到影响(需维护索引的结构和数据);而索引太少,对查询性能又会产生影响。二叉树,左子树的键值总是小于根的键值,右子树的键值…

mysql 5.7 api 中文_mysql5.7怎么解决中文

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里云数据库专家保驾护航,为用户…

mysql卸载完环境变量还有_MySql完全卸载

这篇文章为转载本博客内容均摘自其他博客,由我整合并且将内容更改的更为详细,方便自己以后观看,也方便各位同学学习,少踩一些坑1.首先我们看一下如何卸载(1)停掉MySql在Windows的服务:开始—> 运行—> services.…

Effective Java学习笔记之第5条 避免创建不必要的对象

第5条 避免创建不必要的对象 一般来说,最好能重用对象而不是在每次需要的时候就创建一个相同功能的对象。 反面例子: String s new String("stringette"); // DONT DO THIS! 对于同时提供了静态工厂方法和构造器都不可变类,通常可…

C_C++变量命名规则

变量命名规则是为了增强代码的可读性和容易维护性。以下为C必须遵守的变量命名规则: 1、 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成。 2、 第一个字母必须是字母或者下…

pycharm怎么编写python代码_如何设置PyCharm中的Python代码模版(推荐)

在MacOs运行的PyCharm中,执行python文件,如果不指定python文件字符编码会报错:SyntaxError: Non-ASCII character \xe6 in file /Users/yuchao/PycharmProjects/oldboy_python/python_lesson/模块与包/spam.py on line 6,but no encoding dec…

转载——开阔自己的视野,勇敢的接触新知识

在我们公司有buddy制度。每个新员工都会被分配给一个有经验的员工。老员工会在新员工6个月的试用期内给予各种各样的帮助。前几天我被分配到一个新buddy。在和他一起聊天的过程中,明显感觉到他有一些忧虑。“我以前主要做的是c,没做过java,怎…

select与pselect的信号屏蔽

pselect() 函数的原型是:int pselect(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, const struct timespec *timeout, const sigset_t *sigmask); 它和 select() 函数基本相同,区别在于两个不同的参数&#xff…

vb访问mysql容易死机_VB访问MySQL

最近研究的东西中, 有一部分涉及到用VB访问MySQL数据库, 今天研究了一下小有收获, 共享出来供大家参考首先下载MySQL 的 ODBC 驱动, 我下载的是 MySQL ODBC 3.51 withoutinstaller 版, 下载后是一zip包, 随便解压到哪, 然后运行 cmd, 定位路径到解压的目录, 然后运行 install.b…

cookie注入讲解

我们首先还是来看看中网景论坛的最新版本"(CNKBBS2007)中网景论坛2007v5.0 "官方下载地址" http://www.cnetking.com/websys2.asp?id26"发布时间是2007-06-06,打开系统的源代码后,在"user_RxMsg_detail.asp"文件中,有如下代码:<!--#include …

sigprocmask 阻塞进程

本系列文章由muge0913编写&#xff0c;转载请注明出处&#xff1a;http://blog.csdn.net/muge0913/article/details/7334771 1、有时候不希望在接到信号时就立即停止当前执行&#xff0c;去处理信号&#xff0c;同时也不希望忽略该信号&#xff0c;而是延时一段时间去调用信号处…

python ftp 设置代理_用Python搭建一个简单的代理池

def get_user_agent():随机获取一个用户代理user_agents["Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)","Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Acoo Browser; SLCC1; .NET …

C++变量命名规则

浅谈C变量命名规则 不知道别的公司如何&#xff0c;反正我现在的公司对变量命名并没有一定的规范&#xff0c;唯一要求就是能简单易懂&#xff0c;但是&#xff0c;我想&#xff0c;这个多个程序员&#xff0c;大概每个人都有自己习惯的一套 命名规则吧&#xff0c;不过&#…

JavaScript中奇妙的replace

1、发现问题&#xff1a; 今天在读require.js源代码时&#xff0c;不经意读到这么一段代码&#xff1a; 1 //If no name, and callback is a function, then figure out if it a2 //CommonJS thing with dependencies.3 if (!deps && isFunction(callback)) {4 dep…

python3 x和python2 x区别_Python知识:Python 3.x和2.x版本的使用区别

使用Python时都需要安装相应的版本&#xff0c;不同的版本适用性也不一样。今天从除法算子、打印功能、Unicode、Xrange、错误处理、未来模块方面看看Python2.x和Python3.x之间的区别。除法算子在移植代码或在python2.x中执行python3.x代码时&#xff0c;要注意整数除法的更改&…

select EINTR

实验环境&#xff1a;ubuntuKylin 13.10 在程序里同时有select和定时器&#xff0c; select 会被定时器产生的EINTR中断 在定时器的设置中增加了SA_RESTART和sigprocmask&#xff0c;发现都不管用 只能自己判断EINTR来重启select了。 在select被EINTR中断时&#xff0c;我输…

移除首页-重回首页

之前发布了一篇文章《订餐系统之获取淘宝外卖订单》&#xff0c;因为是关于淘宝外卖的&#xff0c;所以文中出现这个词时&#xff0c;都加了链接&#xff0c;还设置了 target_blank,就是为了让看的人方便点击&#xff0c;查看。后来&#xff0c;博客园说这个文章中含有推广链接…

sap客户信贷_信贷控制,FD32的销售值不会变化,只有应收总额的变化

请去检查 行项目类型的设定.里面有个栏位 Credit active , 我基本可以确定这里没有勾上才会出现你的问题.ID: Item with active credit function / relevant for creditSpecifies whether the credit management functions (credit checks and update statistics) for order, d…

Scrum之 Sprint计划会议

在sprint第一天召开sprint计划会议&#xff0c;这个会议分为两部分&#xff0c;计划会议1由PO、SM和Team参加&#xff0c;主要是从产品backlog中挑选出需要放到当前sprint下的既定产品backlog&#xff0c;然后由SM、Team参加计划会议2&#xff0c;把既定产品backlog的故事拆分成…