CS0029: 无法将类型“int”隐式转换为“System.Data.OleDb.OleDbDataReader”错误

xikuang 2004-06-23 11:11:14
public void page_Load(Object sender,EventArgs e)
{

string path=Request.PhysicalPath;//取得路径
int len=path.Length;//路径的长度
int ff=path.LastIndexOf("\\");//取路径path中最后一个"\"的位置
string strmdb=path.Substring(0,(ff+1));
strmdb=strmdb+"thedata\\thedata.mdb";//access数据库的路径
string mdbconnection="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+strmdb;
OleDbConnection conn=new OleDbConnection(mdbconnection);
conn.Open();//打开数据库
OleDbCommand mdbcomm=new OleDbCommand("insert into userlist(username,remark,comment) values('朱从海','dfds','是我弟弟')",conn);
OleDbDataReader rs=mdbcomm.ExecuteNonQuery();
}

表结构:id(标识) username(文本型) remark(文本型) comment(文本型)

提示错误:编译器错误信息: CS0029: 无法将类型“int”隐式转换为“System.Data.OleDb.OleDbDataReader”
行 20: OleDbDataReader rs=mdbcomm.ExecuteNonQuery();

这是怎么回事呀,

若把("insert into userlist(username,remark,comment) values('朱从海','dfds','是我弟弟')"改成“select * from userlist”把ExecuteNonQuery()改成ExecuteReader()则正常~~
...全文
184 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
shoutor 2004-06-23
  • 打赏
  • 举报
回复
OleDbDataReader rs=mdbcomm.ExecuteNonQuery();
是有问题,ExecuteNonQuery()返回的是执行的行数,为整型,不能是数据阅读器对象
xikuang 2004-06-23
  • 打赏
  • 举报
回复
在线等待~~~~
xikuang 2004-06-23
  • 打赏
  • 举报
回复
那要怎么写呢?
俺是菜鸟呀,在网上找的内容也都是这样的~~
renrenqq 2004-06-23
  • 打赏
  • 举报
回复
ExecuteNonQuery()
执行命令并返回受影响的条数,一般用来执行对数据库的增删改操作
ExecuteReader()
执行命令并放回一个DataReader,这个DataReader用来存放查询结果,执行Select操作
davixiong 2004-06-23
  • 打赏
  • 举报
回复
ExecuteNonQuery的返回值是影响的行数,int类型

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

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

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

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