gpt4 book ai didi

c# - 使用 AND 关键字从我的数据库中删除一行

转载 作者:太空宇宙 更新时间:2023-11-03 16:23:57 25 4
gpt4 key购买 nike

所以我想从我的列表框中删除一行,这是用户按下删除键的地方,程序应该执行它的操作。唯一的事情是它没有。如果我只是删除名字,它会正常工作并且我的数据库会更新,但是当我尝试同时删除名字和姓氏时,它不起作用。有人可以帮帮我吗。我是新手,这是学校的作业。非常感谢。

干杯

SqlConnection cn;
cn = new SqlConnection();
cn.ConnectionString = "Data source=(local); Initial Catalog=INT422Assignment1;Integrated Security=SSPI;";
cn.Open();
SqlCommand cmd;
cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "DELETE FROM myTable WHERE firstName=@firstName AND lastName=@lastName";


SqlParameter param;
param = new SqlParameter("@firstName", SqlDbType.VarChar);
param.Direction = ParameterDirection.Input;
param.Value = firstNameDelete.Text;
cmd.Parameters.Add(param);

param = new SqlParameter("@lastName", SqlDbType.VarChar);
param.Direction = ParameterDirection.Input;
param.Value = lastNameDelete.Text;
cmd.Parameters.Add(param);


cmd.ExecuteNonQuery();

cn.Close();




MessageBox.Show("Deleted");
this.Close();

最佳答案

我认为您从一开始就采取了错误的方法。假设您有两个 John,John Smith 和 John Doe。如果您的查询是:

DELETE FROM myTable WHERE FirstName="John";

这意味着所有以“John”作为名字的条目都将被删除,包括 Johns。

如果你有:

DELETE FROM myTable WHERE FirstName="John" AND LastName="Doe";

那么理论上 John Doe 将被移除。同样,如果您有多个 John Doe 怎么办?您要全部删除吗?

如果您想删除单个条目,您想要的是根据列表中包含唯一 ID 的隐藏列进行删除,或者更好的是,将您的列表框绑定(bind)到您的表格。

关于c# - 使用 AND 关键字从我的数据库中删除一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13096431/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com