[英]My Delete Query is not being working
I,m designing a CMS(campus Management System) and i wana delete some record...but its neither working nor generate any error...just return zero in "result " varaiable mentioned in code我,正在设计一个 CMS(校园管理系统),我想删除一些记录......但它既不工作也不产生任何错误......只是在代码中提到的“结果”变量中返回零
public void DeleteAnnouncement(BusinessObject bo)
{
string ConnStr = Connection();
SqlConnection conn = new SqlConnection(ConnStr);
conn.Open();
string query = "Delete from Anouncement where AnnouncementID=@i";
SqlCommand cmd = new SqlCommand(query, conn);
SqlParameter p1 = new SqlParameter("i", bo.A_ID);
cmd.Parameters.Add(p1);
int result = cmd.ExecuteNonQuery();
conn.Close();
if (result > 0)
{
Console.WriteLine("\n\n\t============================================");
Console.WriteLine("\tAnnouncement Deleted");
Console.WriteLine("\t============================================\n\n");
}
}
SqlParameter p1 = new SqlParameter("i", bo.A_ID);
您在参数名称前缺少“@”。
Correct: SqlParameter p1 = new SqlParameter("@i", bo.A_ID);
Your code works and deletes a record from Anouncement
table, if AnnouncementID
matches with the value of bo.A_ID
, if value of bo.A_ID
doesn't match with AnnouncementID
, cmd.ExecuteNonQuery();
你的代码的工作,并删除从记录Anouncement
表,如果AnnouncementID
与价值匹配bo.A_ID
,如果值bo.A_ID
不匹配AnnouncementID
, cmd.ExecuteNonQuery();
returns 0
.返回0
。 If it's not deleting that means AnnouncementID
doesn't match with the value of bo.A_ID
.如果它不删除该手段AnnouncementID
不匹配的值bo.A_ID
。
But I suggest improve you code through using
statement, this using
statement ensures that Dispose is called even if an exception occurs while methods on the object are called.但我建议通过using
语句改进您的代码,此using
语句确保即使在调用对象上的方法时发生异常,也会调用 Dispose。
string ConnStr = Connection();
string query = "Delete from Anouncement where AnnouncementID=@i";
using (SqlConnection conn = new SqlConnection(ConnStr))
{
using (SqlCommand cmd = new SqlCommand(query, conn))
{
try
{
SqlParameter p1 = new SqlParameter("i", bo.A_ID);
cmd.Parameters.Add(p1);
conn.Open();
int result = cmd.ExecuteNonQuery();
conn.Close();
if (result > 0)
{
Console.WriteLine
("\n\n\t============================================");
Console.WriteLine("\tAnnouncement Deleted");
Console.WriteLine
("\t============================================\n\n");
}
}
catch (Exception ex)
{
//Do your exception handling work
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.