
private void timer1_Tick(object sender, SystemEventArgs e)
{
try{
//你的代码
}
catch{}
}
因为如果网络断开,是可预知的异常,可以实现做好截获的机制这样程序还能继续运行
两种常见的断开方式:
1 根据数据库连接字符串设置链接生命周期 会自行断开
2 拿,net环境举例 MySQLDataMySqlClient类库下的 MySqlConnection类 下面有个方法 叫 Close() 即可断开连接;
访问MySqlConnection类下的 Statu (只读的)字段 可以获得当前连接状态
提示 断开后的连接 可以随时 根据需要打开
一般如果你的项目里使用的是数据感知控件比如dbedit,dbmemo
如果断开了,那基本数据就没了!再连接也是刷新的
如果你用的只是edit memo那可以手动重新连接,此时是否刷新现有的控件里的数据是可控的。
如果不涉及数据的刷新,可以用TTIMER 频率不可设太高,检测下如果断了,就retry
mysql与程序连接,在一定时间内没有出现连接超过mysql的连接等待时间(wait_timeout)会出现断开连接情况,跟数据库配置有关。
mysql默认连接等待时间是为(28800s)即8h,
命令:show global variables like 'wait_timeout' 查看等待时间
在msql5中wait_timeout的最大值分别是24d/365(win/linux);
在mysql中的安装目录中的myini增加一行 wait_timeout=1814400
linuix在etc/mycnf中
以上就是关于c# winform网络断开重新连接后连接数据库的问题全部的内容,包括:c# winform网络断开重新连接后连接数据库的问题、如何断开MYSQL数据库连接、delphi 中adoconnection连接断开后的自动重连接问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)