为什么提交数据库时一下插入了2条记录?

zengh 2009-03-24 08:12:19
为什么一执行,就增加了两条记录?
代码:
conn.Open();
string sid = System.Guid.NewGuid().ToString();
string sql = "insert into count (atitle,author,unit,sid) values (?,?,?,?)";
cmd.Parameters.Clear();
cmd.CommandText = sql;
cmd.Parameters.Add("atitle", OleDbType.VarChar).Value = TextBox1.Text;
cmd.Parameters.Add("author", OleDbType.VarChar).Value = TextBox2.Text;
cmd.Parameters.Add("unit", OleDbType.VarChar).Value = TextBox3.Text;
cmd.Parameters.Add("sid", OleDbType.VarChar).Value = sid;
cmd.ExecuteNonQuery();
sql = "select id from count where sid='" + sid + "'";
odr = cmd.ExecuteReader();
if (!odr.HasRows)
{
odr.Close();
conn.Close();
Lmsg.Text = "*错误:数据加入错误!!请重新录入!!!";
return;
}
odr.Read();
odr.Close();
conn.Close();

...全文
104 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
joy_log 2009-03-24
  • 打赏
  • 举报
回复
应该是。
zzyzgydotnet 2009-03-24
  • 打赏
  • 举报
回复
conn.Open();
string sid = System.Guid.NewGuid().ToString();
string sql = "insert into count (atitle,author,unit,sid) values (?,?,?,?)";
cmd.Parameters.Clear();
cmd.CommandText = sql;
cmd.Parameters.Add("atitle", OleDbType.VarChar).Value = TextBox1.Text;
cmd.Parameters.Add("author", OleDbType.VarChar).Value = TextBox2.Text;
cmd.Parameters.Add("unit", OleDbType.VarChar).Value = TextBox3.Text;
cmd.Parameters.Add("sid", OleDbType.VarChar).Value = sid;
cmd.ExecuteNonQuery();
sql = "select id from count where sid='" + sid + "'";
odr = cmd.ExecuteReader();
if (!odr.HasRows)
{
odr.Close();
conn.Close();
Lmsg.Text = "*错误:数据加入错误!!请重新录入!!!";
return;
}
odr.Read();
odr.Close();
conn.Close();
红色sql并没有重新赋给cmd.
应该在odr = cmd.ExecuteReader();
前面再加一句cmd.CommandText = sql;
试试吧。

deng520159 2009-03-24
  • 打赏
  • 举报
回复
可能是页面刷新了,就连这个CSDN发贴还有这个毛病,你刚发完贴,马上点刷新,你去看一下,你一共就发了两次贴,他这个就没有很好,不信你试一下,
nanyue2004 2009-03-24
  • 打赏
  • 举报
回复
cmd.ExecuteNonQuery();
sql = "select id from count where sid='" + sid + "'";
odr = cmd.ExecuteReader();
是不是因为cmd.ExecuteReader(); 执行了两次啊

110,571

社区成员

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

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

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