[公共交通设施与房产有何关联]完善的公共交通设施可以使一个地区更适合居住,而影响房产价格增长的直接因素就是该地区的定居人数。在任何一个大城市,公共交通设施都是不可或缺的基础设施。这已经成为了众多...+阅读
标题中的异常相信比较多的朋友都遇到过,遇到这个问题,有较全的解决方案,简单归纳如下:
1、主要原因是 DataReader 在打开使用时,一个 SqlConnection 只允许打开一个 DataReader,在开启另一个 DataReader 时,必须将前面一个先 Close 掉。
2、或许有朋友会问,我在语句中并未使用 DataReader,未何也提示同样的错误,这个DataReader隐藏在哪里,我给大家在这里指出来,由于本人研究的还不够深入,只知道有一种方法的调用后会生成 DataReader,我想这也是绝大多数人遇到头疼的问题。
在使用数据库更新或插入语句时,大家通常使用 Sqlmand 的 ExecuteNonQuery() 方法,并且前提是定义了一个公共的数据库连接(如果每次查询时都生成新连接的话不会存在这个问题,但那样数据库占用的资源相对会高很多),在ExecuteNonQuery() 后,内部会生成一个空的 DataReader 对象,并当当前的数据库连接关闭掉后,该 DataReader 才会释放。因此在大家使用更新方法时,推荐使用 using 关键字,它作为语句,可以将它所定义范围内的对象都释放掉。
我将代码粘贴如下,仅供参考,如果大家对本文中的描述有意义的话,欢迎讨论,MSN:xieyjxx#hotmail.
private static string strConnection = System.Configuration.ConfigurationSettings.AppSettings["SqlStr"];
private static SqlConnection conn = null;
public void open()
{
if (conn == null)
{
conn = new SqlConnection(strConnection);
}
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
}
public void close()
{
if (conn != null||conn.State==ConnectionState.Open)
{
conn.Close();
}
}
public int ExecuteSql(string sql)
{
open();
if (conn == null) return 0;
int iResult = 0;
using (Sqlmand sqlcmd = new Sqlmand(sql, conn))
{
try
{
sqlcmd.mandTimeout = 300;
sqlcmd.ExecuteNonQuery();
iResult = 1;
}
catch (Exception ex)
{
WriteLog("[ExecuteSql]" + ex.Message.ToString() + "\n" + sql + "\n", true); 这是调用写日志文件的一个过程
iResult = 0;
}
finally
{
if (conn.State == ConnectionState.Open)
{
conn.Close();
}
}
}
return iResult;
}
以下为关联文档:
WindowsXP文件关联修复编辑利器当微软Windows系统被首次安装的时候,安装创建了大量的文件扩展关联,这意味着是永久性的。举例来说,.msi扩展名(这种文件扩展常用于微软安装文件格式)不是意味着要被改变或者再...
中考英语作文最常用关联词英语总结初中英语中考词汇表第一组 put down 放下 shut down 把关上 cut down 砍掉 e down 下来,落下 slow down 减缓,放慢 sit down 坐下 write down 写下 get down 下来,降落 初中英...
德语语法关联词关联词一般是代词、副词和代副词,出现在主从复合句的主句中,指代后面的从句,起占位作用。所以它又译成:占位词、引导词、呼应词和相关词等。 根据其引导的主从复合句类型,关联词...
机械类常用英语之射出成形关联用语-工程机电activator 活化剂 bag moulding 气胎施压成形 bonding strength 黏合强度 breathing 排气 caulking pound 填隙料 cell 气孔 cold slug 半凝式射出 colorant 著色剂 color m...