system.data.dll是什么意思?

fengyun6 2003-07-09 09:16:43
我作了一个数据库连接,在ASP.NET中正常的很,但到作一个FORM窗体时,无论是MS SQL SERVER数据库还是ACCESS数据库,每当到执行OleDbDataReader dr=cm.ExecuteReader();时,总是出现一下错误:

未处理的“System.Data.OleDb.OleDbException”类型的异常出现在 system.data.dll 中。

请问,我到底错到哪里了?
下面是我的代码:
OleDbConnection cn=new OleDbConnection();
cn.ConnectionString ="Provider=Microsoft.Jet.OLEDB.4.0; Data Source =jiaojingdb.mdb";

OleDbCommand cm=new OleDbCommand("select * from user",cn);
cm.Connection.Open();
OleDbDataReader dr=cm.ExecuteReader();
if(dr.Read())
{
lable2.Text="dddd";
}
cm.Connection.Close();
谢谢!
...全文
325 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lufly2000 2003-07-10
  • 打赏
  • 举报
回复
如果不用@那么必须在路径字符串用\\

因为user是关键字吧。
zoulipeng 2003-07-09
  • 打赏
  • 举报
回复
Studing!
QQRN 2003-07-09
  • 打赏
  • 举报
回复
废话!结帖啊,害我进来浪费表情
fengyun6 2003-07-09
  • 打赏
  • 举报
回复
虽然,在大家的回答之前我已经解决了,但我仍然要给大家散分!
最关键的,我学到了两个:
1/如何查找问题所在;
2/我的问题症结所在确实是:表名用了user!
3/@是何意?
特别感谢:蓝天白云和 LiSDN(LOCK ON)
cmsoft 2003-07-09
  • 打赏
  • 举报
回复
"select * from [user]"
wzs_wzs123 2003-07-09
  • 打赏
  • 举报
回复
加上@后就不用在字符窜里面写转意字符\.
user是数据库关键字,表名不能用这个
LiSDN 2003-07-09
  • 打赏
  • 举报
回复
@是表示后面的內容是字符串﹐它會忽略轉義字符等。。

user表存在嗎?
fengyun6 2003-07-09
  • 打赏
  • 举报
回复
我这样Catch的:
try
{
cm.Connection.Open();
OleDbDataReader dr=cm.ExecuteReader();
dr.Close
}
catch(Exception ex)
{
MessageBox.Show(ex.ToString());
}
结果,它显示说数据库连接地址不对,我把数据库更改后,数据库的连接变为:
cn.ConnectionString =@"Provider=Microsoft.Jet.OLEDB.4.0; Data Source =F:\Study\030707\jiaojing2\jiaojingdb.mdb";
即:把它变成了绝对地址,并在前面加上了一个@,请问这个@有什么用?

后来,我又catch了一下,结果,出现了说:FROM子句语法错误,但连我的FROM语句只有一句:
"select * from user"
这怎么会错呢?
brightheroes 2003-07-09
  • 打赏
  • 举报
回复
同意楼上两位,在你的cm执行之前加上try
执行之后加上catch
试试看
LongFire 2003-07-09
  • 打赏
  • 举报
回复
catch一下就清楚了!
cmsoft 2003-07-09
  • 打赏
  • 举报
回复
using System.Data;
using System.Data.OleDb;

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧