我想更新表中的一些列,但是ExecuteNonQuery没有响应(超时)。我做错什么了吗?
注意:在数据库表中,id是整数,F1 varchar2,而我要发送的参数是string和int。
try {
using (OracleConnection con = new OracleConnection(ConString)) {
con.Open();
OracleCommand cmd = new OracleCommand();
cmd.Connection = con;
cmd.CommandText = "UPDATE DB.Table "+
"SET F1= :yd" +
"WHERE ID = :id";
cmd.CommandType = CommandType.Text;
cmd.Parameters.Add("yd", yd);
cmd.Parameters.Add("id", id);
cmd.ExecuteNonQuery();
con.Close();
return true;
}
}
catch (Exception ex) {
return false;
}谢谢
发布于 2014-12-25 13:36:59
我发现这是因为其他程序如蟾蜍锁定查询。在用蟾蜍做完所有的事情之后,一切都解决了。
谢谢大家的帮助。我爱你们,我喜欢头脑风暴:)
发布于 2019-01-28 15:37:32
它可以通过提交或回滚挂起事务、到您的Oracle或在您的计算机上运行的任何其他IDE来解决。
发布于 2014-12-25 13:15:30
cmd.Connection = con;
string qry = "UPDATE DB.Table "+"SET F1= @yd" +"WHERE ID = @id";
OracleCommand cmd = new OracleCommand(qry,con);
cmd.Parameters.AddWithValue("@yd", yd);
cmd.Parameters.AddWithValue("@id", id);
cmd.ExecuteNonQuery();https://stackoverflow.com/questions/27647413
复制相似问题