vb.net 指定选择查询OLEDB数据库
Posted
技术标签:
【中文标题】vb.net 指定选择查询OLEDB数据库【英文标题】:vb.net Specified Select query OLEDB database 【发布时间】:2017-09-05 14:01:29 【问题描述】:请帮忙,我正在尝试使用 SELECT,FROM,WHERE 子句在 datagridview 上显示指定的数据:
Private Sub showdata()
Dim identity As String = frmmgrusers.hdtxtid.Text
Dim dbcommand As String
dbcommand = "SELECT First_Name, Second_Name, Dob, ID_Card_No, Email, Username, [Password] FROM UsersTB WHERE ID='" & identity & "'"
adt = New OleDbDataAdapter(dbcommand, dbconn)
datatable = New DataTable
adt.Fill(datatable)
dgvusersreporting.DataSource = datatable
End Sub
但它什么也没显示,这个 showdata() 子程序是在表单加载时写入的,当用户单击其他表单中的按钮时,它将显示一个带有 datagridview 的表单,显示带有 ID 的指定数据。我试图删除 WHERE 子句:
dbcommand = "SELECT First_Name, Second_Name, Dob, ID_Card_No, Email, Username, [Password] FROM UsersTB"
它显示数据(奇怪...?)但我只需要带有 ID 的指定数据
【问题讨论】:
并不奇怪。如果没有具有该 ID 的记录,则不会显示任何内容。您应该始终使用参数,而不是将字符串粘合在一起进行查询。并且密码永远不应该以纯文本形式存储 我想我忘了我需要在 Select 上包含 ID,但我试过仍然没有出现 ID 有一个自动编号 1,2 的记录,...在 frmgrusers.hdtxtid 的其他表单上有一个 1 ,2 里面的文本是因为单击 datagridview 选定的单元格,所以当我从 frmgrusers 单击 datagridview 上的一个单元格时,它会填充 hdtxtid 并单击显示按钮,该按钮将显示另一个带有 datagridview 的表单,其中包含“SELECT First_Name, Second_Name, Dob, ID_Card_No, Email , 用户名, [密码] FROM UsersTB WHERE ID='" & identity & "'" 查询 【参考方案1】:我不敢相信它真的有效...通过这个查询 "SELECT First_Name, Second_Name, Dob, ID_Card_No, Email, Username, [Password] FROM UsersTB where ID=" & identity & " " 虽然不明白ID='" & 的区别是什么 身份&"'转ID="$身份$""
【讨论】:
以上是关于vb.net 指定选择查询OLEDB数据库的主要内容,如果未能解决你的问题,请参考以下文章