看你的链接方式,连接池(短链接,并自动回收关闭)就不需要认为控制关闭连接(mssql一般采用此链接)
长连接,不需要关闭连接;但是要注意链接是否还可用,注意重链接即可。(mssql也有采用此链接方式的)
交互式链接,不需要关闭链接。也有重链接的问题。(mssql不支持此方式)
短链接注意及时关闭链接,不然会导致内存泄露。(mssql几乎没人用短连接)
看描述两次应该是同一个connnection,问题就是getDBConnection中开头的判断,
若connection != null 则直接返回此对象,具体要看你第一次关闭连接怎么做的了,(close是释放占用资源,不会将connection置为null),建议debug调试下
mysql_close
()
关闭指定的连接标识所关联的到
MySQL
服务器的非持久连接。如果没有指定
link_identifier,则关闭上一个打开的连接。
通常不需要使用
mysql_close(),因为已打开的非持久连接会在脚本执行完毕后自动关闭。
建议看看php官方网站,建议我们一般不需要关闭mysql连接,脚本在执行完会自动关闭。
别这样做,
在查询完数据后 关闭连接。在程序里 如果你没关闭连接的话 他会认为 你和数据还没交互完成。
这样你也得不到数据。
如果你像要 一条一条的查的话,你不关闭连接 跟一次查出全部的 没什么区别。
Sqlconnection con=new Sqlconnection("Data Source = localhost;"); //定义连接对象con
SqlCommand cmd=new SqlCommand("Select 查询语句",con); //定义执行对象cmd
conopen(); //打开连接
cmdExecuteReader(); //执行 *** 作
conClose(); //关闭连接
你的错误:
1、DBHelperconnection("connString"),这么写到你方法里面就是return new Sqlconnection("connString"), ,生成连接对象就已经出错了。
2、DBHelperconnection是一个方法,不能当作类来用,DBHelperconnection("connString")Open(),这样写语法就没错了,但是由于第一个错误,运行后肯定是连接不上数据库的。
改动:
1、你这样改,DBHelper类,
public static Sqlconnection connection()
{
return new Sqlconnection(connString);
}
2、代码如下:
Sqlconnection con=new DBHelperconnection();
command = new SqlCommand(sql,con);
conOpen();
SqlDateReader // 不用改动。
dateReaderClose();
conClose();
手写代码,可能拼写有错。自己改下就行了。
以上就是关于mssql 数据库 连接后要关闭吗全部的内容,包括:mssql 数据库 连接后要关闭吗、java 连接 sql server 数据库 :连接已关闭、php用$result=mysql_query($sql,$conn)打开mysql数据库连接后,要不要关闭连接等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)