mysql - VB.NET:使用 MySQL 查询填充组合框

标签 mysql vb.net combobox

我正在尝试从 MySQL 数据库填充组合框;但我什么也没得到。 下面是代码。

表:类

列:代码、状态

sqlstr = "SELECT * FROM Class WHERE State= Not Started"
DBCmd = New MySql.Data.MySqlClient.MySqlCommand(sqlstr, DBConn)
DBDR = DBCmd.ExecuteReader
While (DBDR.Read())
CB_Class.Items.Add(DBDR("Code"))
End While
DBCmd.Dispose()
DBDR.Close()

我认为结果是错误的,因为至少有 2 条记录的状态值设置为“未开始”。怎么了?我写的“State= Not Started”有什么问题吗?

最佳答案

命令文本似乎不正确。它缺少要搜索的字符串周围的单引号

sqlstr = "SELECT * FROM Class WHERE State='Not Started'"
                                          ^           ^

如果 State 是字符串字段,则对其进行的每次搜索都应用单引号引起来。
当要搜索的字符串包含单引号时,请注意潜在的问题。

在这个简单的情况下,您可以直接使用字符串常量,但如果您通过用户输入呈现动态搜索,那么您应该使用参数化查询。

关于mysql - VB.NET:使用 MySQL 查询填充组合框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15823329/

相关文章:

mysql - 从mysql中的不同表中选择不相等的列

php - 不断出现 MySQLi 错误

c# - 如何在c#中的winform应用程序中设置组合框第一个元素

java - 为 javaFx TableView 中的每一行动态填充组合框列表

c# - ComboBox 或 ListBox 作为 Form 的索引 - 将其他控件绑定(bind)到 SelectedItem

H2/Derby/HSQL 中的 MySQL 函数 'HEX'

mysql - 使用 Grep 在每行循环中创建多个变量 - BASH

c# - 如何从 C# 或 VB.Net 使用 Win32 'DwmSetIconicThumbnail'?

asp.net - 如何在 asp.net 中制作仅包含顶级元素的基于站点地图的菜单?

vb.net - 以编程方式设置 ListView 中的所选项目后,箭头键不起作用