我在列出vb.net中某个数据库中的所有表时遇到了问题:
Public Sub table_show()
cmd.CommandText = "SHOW TABLES FROM '" + database + "'"
MessageBox.Show(cmd.CommandText.ToString)
Me.dataAdapter = New MySqlDataAdapter(cmd.CommandText, con)
Dim commandBuilder As New MySqlCommandBuilder(Me.dataAdapter)
Dim table As New DataTable()
table.Locale = System.Globalization.CultureInfo.InvariantCulture
Me.dataAdapter.Fill(table)
Form1.BindingSource1.DataSource = table
Dim data As New DataSet()
data.Locale = System.Globalization.CultureInfo.InvariantCulture
Form1.DataGridView1.DataSource = Form1.BindingSource1
End Sub
我使用消息框来查看发生了什么。似乎查询不希望那些单引号。这是消息框显示给我的内容:
SHOW TABLES FROM 'sqlgen'
当我尝试直接查询而不需要参数时,它有效:
SHOW TABLES FROM sqlgen
我得到的错误是一个SQL查询错误。 如何删除那里的单引号,以便我不会收到错误。
答案 0 :(得分:1)
有时您可能希望`引号不是'引号。
但是,我不遵循。如果查询不喜欢单引号,并且您不希望它们在那里,请从代码中删除它们。