SQL 语法错误 似乎可以找到正确的查询

Posted

技术标签:

【中文标题】SQL 语法错误 似乎可以找到正确的查询【英文标题】:Error in SQL syntax Can seem to find the right query 【发布时间】:2015-06-11 18:08:18 【问题描述】:

我遇到了问题,我似乎无法正确地进行 sql 查询

                Dim command1 As New mysqlCommand("UPDATE userscanner SET Username ='" & txtbox_username.Text & "',Password='" & txtbox_password.Text & "' WHERE ID = '" & lbl_id.Text & "')", Connection)
                command1.ExecuteNonQuery()
                MsgBox("Profile Successfuly Saved")
                Me.Close()

但我有一个错误提示“您的 sql 语法有错误;请查看与您的 MySQL 服务器版本对应的手册,以在第 1 行的 ')' 附近使用正确的语法

顺便说一句,我使用 XAMPP 和 MYSQL 作为数据库

【问题讨论】:

& "')" 中删除) 欢迎来到 ***.com! :-) 语句中的大括号数量不平衡。语句末尾有一个额外的大括号。这就是错误消息试图告诉您的内容。 你真的应该使用参数化查询来避免sql注入。而且,正如其他人所说,您不需要在& "')" 之后的) lbl_id.Text 【参考方案1】:

你有多余的')'

更正:

            Dim command1 As New MySqlCommand("UPDATE userscanner SET Username ='" & txtbox_username.Text & "',Password='" & txtbox_password.Text & "' WHERE ID = '" & lbl_id.Text & "'", Connection)
            command1.ExecuteNonQuery()
            MsgBox("Profile Successfuly Saved")
            Me.Close()

【讨论】:

【参考方案2】:

试试这个:

        Dim command1 As New MySqlCommand("UPDATE userscanner SET Username ='" & txtbox_username.Text & "',Password='" & txtbox_password.Text & "' WHERE ID = '" & lbl_id.Text & "'", Connection)
        command1.ExecuteNonQuery()
        MsgBox("Profile Successfuly Saved")
        Me.Close()

【讨论】:

【参考方案3】:

在构造 sql 语句时,您似乎包含了一个没有左括号的 ')' 右括号

【讨论】:

【参考方案4】:

我认为您需要删除 ')'。

Dim command1 As New MySqlCommand("UPDATE userscanner SET Username ='" & txtbox_username.Text & "',Password='" & txtbox_password.Text & "' WHERE ID = '" & lbl_id.Text & "'", Connection)

【讨论】:

【参考方案5】:

您应该使用参数化更新查询

【讨论】:

以上是关于SQL 语法错误 似乎可以找到正确的查询的主要内容,如果未能解决你的问题,请参考以下文章

Sql出错:日期的语法错误 查询数据的时候发现错误,请检查您的查询代码是不是正确。

错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册以获取正确的语法使用

编写查询时的 SQL 语法错误

查找缺失行的 SQL 查询返回语法错误

如何调试“您的 SQL 语法有错误”

Visual Studio 认为正确的 SQL 语法不正确