手机版

asp.net Accee数据库连接不稳定解决方案

时间:2021-11-25 来源:互联网 编辑:宝哥软件园 浏览:

错误信息如下:写了如下的一个方法来返回数据操作影响的行数:如下复制代码代码如下:private int GetReturnValue(字符串sStr,字符串conn){ oledb连接odbc onn=访问帮助(conn);oledb COmmand odb cmd=new oledb COmmand(SStr,odb conn);返回odbcmd .execution query();} 用下面的一个方法来调用这个类:复制代码代码如下: public int wsbm(string[]str){ StringBuilder sb=new StringBuilder();某人(某人的简写)追加('插入到')。追加(“wsbm(zy,studentname,parent name)”);某人(某人的简写)追加(“VALUES”);某人(某人的简写)追加(“‘str[0]”、“‘str[1]”、“‘str[2]”);某人(某人的简写)追加(')');返回获取返回值(某人.ToString(),' ODBconn ');} 在这个事件中发送数据:复制代码代码如下:受保护的void Bttj _ Click(对象发送者,EventArgs e){ string[]SStr=new string[]{ this。ddlzy。selecteditem。text,this.tbName.Text,this.tbbb.Text,};if (ad.wsbm(sStr) 0) {响应.Write('scriptalert('插入成功!)/script’);} } 执行了之后的结果如下图,这是什么原因?

我把能连接到接近数据库所有的方式全用了下,结果还是这个样,连接方式如下:复制代码代码如下:私有OleDbConnection AccessHelp(字符串字符串){ oledb连接odbc onn=new oledb连接();请尝试{ string sstr 2=' Provider=Microsoft .喷气机。OLEDB.4.0持续安全信息=假;数据源='服务器地图路径(@ ' App _ Data \ #[电子邮件保护]# GDS。MDB’);odbconn .ConnectionString=SSt2 if(odb conn .状态==连接状态.已关闭){ odbconn .open();} else{ sStr2='DBQ='服务器地图路径(@ ' App _ Data \ #[电子邮件保护]# GDS。MDB ')';DefaultDir=;驱动程序={微软访问驱动程序(*。MDB)};”;odbconn .ConnectionString=SSt2 if(odb conn .状态==连接状态.已关闭){ odbconn .open();} } } catch { try {//odbc onn=new oledb连接(配置管理器.连接字符串.ConnectionString);odbconn .连接字符串=配置管理器连接字符串.ConnectionStringif (odbconn .状态==连接状态.已关闭){ odbconn .open();} } catch { string sstr 1=@ ' Provider=Microsoft .喷气机。OLEDB.4.0持续安全信息=假;数据源=。\ App _ Data \ #[电子邮件保护]# GDS。“MDB”;//odb conn=新oledb连接(SSt R1);odbconn .ConnectionString=SSt1if(odbc onn .状态==连接状态.已关闭){ odbconn .open();} } }返回odbconn}我的上片中把链接的方式全部在本地测试了下,一点问题也没有,性能方面一样是绝对没问题的,他是在我开发完这个的时候在本地是好的,一发到域名空间去就有问题来了,这里我看了下我的异常问题:异常结果如图

结果被翻译成英语:请求已超时,连接池已达到最大限制。看完之后,我的心凉了很多。想了想,原来我的连接被系统给了15秒的默认请求时间。后来我直接把连接时间改成了1分钟。代码:复制代码如下:私有oledb连接访问帮助(字符串str) {oledb连接o dbconn=new oledb connection();请尝试{ string sstr 2=' Provider=Microsoft。Jet . OLEDB.4.0持续安全信息=假;连接超时=120;数据源='服务器。MapPath(@ ' App _ Data \ #[email protected]# GDS . MDB ');odbconn。ConnectionString=sStr2if (odbconn。State==ConnectionState。已关闭){ odbconn。open();} else{ sStr2='DBQ='服务器。MapPath(@ ' App _ Data \ #[email protected]# GDS . MDB ')';DefaultDir=;驱动程序={微软访问驱动程序(*。MDB)};连接超时=120;';odbconn。ConnectionString=sStr2if (odbconn。State==ConnectionState。已关闭){ odbconn。open();} } } catch { try {//odbc onn=new oledb connection(configuration manager。ConnectionStrings[str]。ConnectionString);odbconn。连接字符串=配置管理器。ConnectionStrings[str]。ConnectionStringif (odbconn。State==ConnectionState。已关闭){ odbconn。open();} } catch { string sstr 1=@ ' Provider=Microsoft。Jet . OLEDB.4.0持续安全信息=假;连接超时=120;数据源=。\ App _ Data \ #[email protected]# GDS . MDB ';//odb conn=new oledb connection(SSt R1);odbconn。ConnectionString=sStr1if (odbconn。State==ConnectionState。已关闭){ odbconn。open();} } }返回odbconn}结果我就这样改了这些代码,解决了连接超时的问题。在上面的文章中,写了连接池的默认时间在连接数据库不稳定的时候被更改了很长时间。改完之后,如果是在很卡的时间内持续刷新,但是,出来了一个严重的问题,就是普通的数据丢失问题来了。结果我用测试软件测试了一下,没看到结果,因为我们本地妹子有办法测试,我的配置和服务器有点不一样。通常,服务器和我们本地的不一样,但是我们使用的是网站。我的类改变了SqlHelper将数据SQL数据库连接到Access数据库的连接模式,所以类消除了这个问题。我只是直接掉了他的课,给了一些参数,所以这些都没问题。它们可能会在非常短的时间内出现。我只是找了一下,没看到结果。后来在英文博客里看到我没有省略一个属性。这个属性是:旧连接成员下的连接超时什么时候结束?如果你处于一个糟糕的情况,它恰好被默认定义为30秒的超时状态。如果您修复它,文件将恢复正常。结果我给了这个属性1分钟,很正常。我建议你不要给它太长时间。已经给了很久了。一旦真的出了问题,就要把别人的电脑设置在屏幕上。总是在那里尝试这种连接。之后,越来越少的人会去拜访和提问。

复制代码代码如下:私有静态void PrepareCommand(OldbCommand命令,旧连接连接,旧交易事务,CommandType commandType,字符串commandText,SqlParameter[],commandParameters,out bool mustscloseconnection){ if(command==null)抛出新的ArgumentNullException('命令');if(命令文本==null | |命令文本.长度==0)引发新的ArgumentNullException(' CommandText ');//如果提供的连接没有打开,我们将打开if(连接.状态!=ConnectionState .open){ MustCloseConnection=true;连接open();} else { MustCloseConnection=false;} //将连接与命令命令相关联。连接=连接;//设置命令文本(存储过程名或结构化查询语言语句)命令命令文本=命令文本//设置命令时间命令CommandTimeout=60//如果给我们提供了一个事务,如果(事务!=null) { if(事务连接==空)引发新的ArgumentException("事务已回滚或提交,请提供一个打开的事务“,‘transaction’);命令。交易=交易;} //设置命令类型命令命令类型=命令类型//如果提供了命令参数,则附加命令参数(命令参数!=null) { AttachParameters(命令、命令参数);}返回;} 上面是我用的那个类,修改的时间位置。已经用背景标出来了。呵呵,这个连接不稳定的问题到此就结束了。本文专业技术是ASP .网开发,在次谢谢你对我的博客的关注。有问题也可以加我Q我哦。

版权声明:asp.net Accee数据库连接不稳定解决方案是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。