头疼,一直提示"未指定的错误",而且有时候有,有时候没有

itzhiren 2007-09-05 03:38:12
异常详细信息: System.Data.OleDb.OleDbException: 未指定的错误

源错误:


行 36: constr = getconnstr();
行 37: connstr = new OleDbConnection(constr);
行 38: connstr.Open();
行 39: }
行 40: public void CloseDB()


源文件: h:\ASP.NET\itzhiren\App_Code\conndb.cs 行: 38


这个错误有时候有有时候没有,无规律出现,一直不知道怎么解决,希望各位帮忙,多谢!
...全文
430 12 打赏 收藏 举报
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
thecityofsky 2008-06-30
如何解决的啊 我没有 CloseDB();
运行次数多了还是提示错误啊
  • 打赏
  • 举报
回复
OpenDB();
OleDbCommand myCom = new OleDbCommand(sql, connstr);
OleDbDataReader myreader = myCom.ExecuteReader();
return myreader;
CloseDB(); //你都return 这句话永远没有执行的机会
  • 打赏
  • 举报
回复
itzhiren 2007-10-16
public void OpenDB()
{
string constr;
constr = getconnstr();
connstr = new OleDbConnection(constr);
connstr.Open();
}
///////////////////////////////////////////////////////////////////////
public OleDbDataReader MyDataReader(string sql)
{
OpenDB();
OleDbCommand myCom = new OleDbCommand(sql, connstr);
OleDbDataReader myreader = myCom.ExecuteReader();
return myreader;
CloseDB();
}
//////////////////////////////////////////////////////////////////////
public void CloseDB()
{
connstr.Dispose();
connstr.Close();
}
//////////////////////////////////////////////////////////////////////
public OleDbConnection connstr;
public string getconnstr()
{
string constr;
constr = "Provider=Microsoft.Jet.OleDb.4.0;Data Source=" + HttpRuntime.AppDomainAppPath + System.Configuration.ConfigurationManager.AppSettings["httpAccessDB"];
return constr;
}
//////////////////////////////////////////////////////////////////////////
大家帮我看看哪里有问题?这几段代码我不是按顺序帖的,大体就是这样
  • 打赏
  • 举报
回复
jaic4584808 2007-09-06
网应 软开的 教学视频网:http://www.abab123.com/bbs/down.asp?html=653483
  • 打赏
  • 举报
回复
itzhiren 2007-09-06
那应该在哪儿关闭啊?是在页面里面用完之后马上关闭?还是直接写在类里面啊?
  • 打赏
  • 举报
回复
longjia 2007-09-05
觉得也是Open后,没有Close();
  • 打赏
  • 举报
回复
jiangmin168168 2007-09-05
constr = getconnstr();
不参议这样用;
直接这样用
SqlConnection conn = new SqlConnection(connectionString);
conn.open()
conn.close()
你的错误有可能是并发的时候产生的.
同时用完了要记的关
  • 打赏
  • 举报
回复
songsu 2007-09-05
如果我没有猜错的话
getconnstr();这一个函数返回的不是标准数据库链接字符串。
所以才导致了 new OleDbConnection(constr); 语句的出错

给你几个OleDb的标准数据库连接字符串例子:
(1)标准连接:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=_path_;User Id=_id_;Password=_pass_;
(2)工作组连接:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=_path_;Jet OLEDB:System Database=system.mdw;
(3)带密码的连接:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=_path_;Jet OLEDB:Database Password=_pass_;
  • 打赏
  • 举报
回复
PCI_E 2007-09-05
可能是你的conndb类里面的对象开启以后没有释放,你的跑进去调试下
  • 打赏
  • 举报
回复
close() 没??
  • 打赏
  • 举报
回复
itzhiren 2007-09-05
access asp.net(c#)

问题出现在连接数据库的地方,
行 36: constr = getconnstr();
行 37: connstr = new OleDbConnection(constr);
行 38: connstr.Open();
行 39: }
行 40: public void CloseDB()

第38行提示错误,已经确定数据库路径没有问题,并且数据库没有人为打开

大家帮忙分析还有什么可能的原因?
  • 打赏
  • 举报
回复
zhchg6666 2007-09-05
up
  • 打赏
  • 举报
回复
相关推荐
发帖
.NET社区
加入

6.0w+

社区成员

.NET技术交流专区
社区管理员
  • ASP.NET
  • R小R
  • 喵叔哟
帖子事件
创建了帖子
2007-09-05 03:38
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。