带有多个where条件错误的sql delete语句

时间:2019-09-09 17:40:59

标签: c# sql sql-delete sqlanywhere

如果不是请说这是正确的说法吗?

String query = "delete from favourite where username=" + 
               Session["username"].ToString() + "and id=" + id;

1 个答案:

答案 0 :(得分:0)

如果您的问题纯粹是关于SQL的,那么是的,您所拥有的将起作用。但是,有了它,您就会遇到一个非常严重的安全问题。谷歌“ SQL注入攻击”。我不确定您要使用什么进行数据访问(ADO.NET?Entiry Framework?Dapper?)。但是无论如何,您都想使用参数:

value1 <- function(data) {
data[1]
}

Function <- function (data, "value1") {
if(any(value1 %in% data[[1]])) {
maxcol <- which.max(data[value1,])
print(paste(value1, data[maxcol,], data[maxcol, value1]))
} else {
print("Check value")}
}

然后:

var sql = "delete from favourite where username=@username and id=@id";

但是即使那样,cmd.Parameters.AddWithValue("@username", Session["username"].ToString()); cmd.Parameters.AddWithValue("@id", id); 也不是最好的方法,因为一旦查询命中数据库,它可能会导致类型转换问题。您最好长期这样做:

AddWithValue