从数据库中删除行时出错
本文关键字:出错 删除行 数据库 | 更新日期: 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 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
子句仍然可以用于选择特定的行。
删除*,您的查询就和您一样好。