从数据库中删除行时出错

本文关键字:出错 删除行 数据库 | 更新日期: 2023-09-27 17:49:32

我正在使用此代码尝试从表中删除数据:

SqlConnection con = new SqlConnection(str);
SqlCommand cmd = new SqlCommand("delete * from login", con);
con.Open();
cmd.ExecuteNonQuery();

当我运行这个时,我收到这个错误:

System.Data.dll中发生类型为"System.Data.SqlClient.SqlException"的未经处理的异常附加信息:"*"附近的语法不正确

从数据库中删除行时出错

DELETE语句的标准语法是
 DELETE from <tablename> WHERE <condition>

FROM之前不需要星号。只有MS Access喜欢这种语法。

还要记住,如果你不添加WHERE条件,整个表都会被删除,但使用可以更容易、更快

 DROP TABLE <tablename>
SqlCommand cmd = new SqlCommand("delete from login", con);

您不必指定要删除的列,因为您总是删除整行。这就是为什么您不必编写*

查询中的问题。

代替书写:

Delete * from login

你应该写:

Delete from login

Exp:在delete命令中,我们不需要像在select语句中那样编写*,因为您不能只删除某些列,而是删除整行。但是,where子句仍然可以用于选择特定的行。

删除*,您的查询就和您一样好。