SqlQuery = "INSERT INTO GradeTable(Grade,UserID,RegDate)Values('" & TxtGrade.Text.Trim & "','" & UserID & "','" & DTBReg.Value & "'Where GradeTable.StudentID ='" & StudentID & "' and GradeTable.CourseID= '" & CourseID & "') "
-6
A
回答
2
看起来你正在尝试做什么,你需要的是一个UPDATE语句,而不是你正在编写的INSERT。这似乎是一个更appropiate查询:
UPDATE GradeTable
SET Grade = @grade,
UserID = @UserID,
RegDate = @RegDate
WHERE StudentID = @StudentID AND CourseID = @CourseID
请注意,我用的参数,而不是你的文本框的值。这是因为您容易受到SQL注入最常见的数据库安全漏洞之一的攻击。
使用该文本为您查询,然后你可以添加你的价值观来查询是这样的:
cmd.Parameters.AddWithValue("@grade", TxtGrade.Text.Trim);
cmd.Parameters.AddWithValue("@UserID", UserID);
//AND SO ON WITH OTHER PARAMETERS
Assumming cmd是你的SqlCommand
+2
在像这样的即席查询中要小心使用AddWithValue。它有时可能会导致数据类型错误并导致问题。最好明确定义数据类型。 http://blogs.msmvps.com/jcoehoorn/blog/2014/05/12/can-we-stop-using-addwithvalue-already/还有我的+1! –
+0
@SeanLange你是对的。我只是使用了AddWithValue,因为我不知道OP表数据类型。好的观察。 – NicoRiff
相关问题
- 1. 'Worker'附近的语法错误,关键字'AS'附近语法不正确
- 2. “真实”附近的语法不正确。关键字'where'的语法不正确
- 3. 关键字'Transaction'SQL插入语句附近的语法不正确
- 4. SQL查询,不正确的语法附近的“关键字”
- 5. 不正确的语法附近的关键字'和'
- 6. System.Data.SqlClient.SqlException:关键字'Table'附近的语法不正确
- 7. sql server 2012:关键字'else'附近的语法不正确
- 8. 关键字'end'附近的语法不正确
- 9. 关键字'statistics'附近的语法不正确。 Spring.IO
- 10. 关键字'内部'附近的语法不正确
- 11. 关键字'with'附近的语法不正确(SQL)
- 12. 关键字“主”附近的语法不正确
- 13. System.Data.SqlClient.SqlException:关键字'WHERE'附近的语法不正确
- 14. T-SQL - 关键字'case'附近的语法不正确
- 15. System.Data.SqlClient.SqlException:关键字'FROM'附近的语法不正确
- 16. ms sql错误:关键字'on'附近的语法不正确
- 17. SqlException:关键字'AND'附近的语法不正确
- 18. Tsql:关键字'IF'附近的语法不正确
- 19. 关键字“开始”附近的语法不正确
- 20. SQL Server Management Studio:关键字'LEFT'附近的语法不正确
- 21. 关键字'Distinct'附近的语法不正确
- 22. ASP.NET CSHTML - “关键字'用户'附近的语法不正确。”
- 23. pypyodbc:关键字“WITH”附近的OPENJSON语法不正确
- 24. 关键字'SELECT'附近的语法不正确
- 25. 不正确的语法“为”关键字附近
- 26. 关键字'结束'附近的语法不正确。 sql
- 27. System.Data.SqlClient.SqlException:关键字'文件'附近的语法不正确
- 28. 关键字''附近的语法不正确。当试图插入
- 29. SQL错误 - 关键字'Database'附近的语法不正确
- 30. SQL Server 2014 - 关键字'tran'附近的语法不正确
你需要阅读,理解并开始使用参数化在鲍比桌子来拜访之前的查询。 http://bobby-tables.com/这是一个关于sql注入漏洞的教科书示例。 –
这不是一个问题,这是代码。 – HoneyBadger
为什么在插入语句中使用where子句? – NicoRiff