C# 我的Sql Delete语句被解释错误
这可能只是我看错了,但我需要另一个人的眼睛来看着它,因为我看不见它 为什么会这样:C# 我的Sql Delete语句被解释错误,c#,sql,C#,Sql,这可能只是我看错了,但我需要另一个人的眼睛来看着它,因为我看不见它 为什么会这样: comm.CommandText = "Delete from COURSE where COURSE_NAME='" + theCourse.CourseName() + "';"; // create query 在结尾处输出报价,而不是' 结果: Delete from COURSE where COURSE_NAME='LEARNING VITALS" 不要!!!在构建sql语句时连接字符串,这样就可
comm.CommandText = "Delete from COURSE where COURSE_NAME='" + theCourse.CourseName() + "';"; // create query
在结尾处输出报价,而不是'
结果:
Delete from COURSE where COURSE_NAME='LEARNING VITALS"
不要!!!在构建sql语句时连接字符串,这样就可以防止sql注入攻击。改用参数
comm.CommandText = "DELETE FROM Course WHERE Course_Name=@name";
comm.Parameters.AddWithValue("@name", "theNameOfTheCourse");
好的,不要问我为什么或者怎么做,但是当你在引号中用空格隔开“;”的时候,'会出现,而“会消失,并且会起作用。” 编辑代码:
comm.CommandText = "Delete from COURSE where COURSE_NAME='" + theCourse.CourseName() + "'; ";
检测到SQL注入。请尝试将其更改为使用参数化查询。这不仅可能会解决您的问题,而且还会阻止SQL注入。可能
CourseName()
方法正在返回带有尾随引号的字符串。请使用调试器查看theCourse.CourseName()中的值
它在Debugger中没有引用好的建议,但它不是答案是的,这很好,它无法解决我的问题。不过我已更改为此,因此感谢您提供的信息。