询问者
VB.net 2010 + Access 如何把定义的string传给数据库查询

常规讨论
-
接触VB.net只有几天的时间,自己在摸索。有个问题,今天下午弄了半天都没弄好。
VB.net 版本是VB.NET 2010 Express版本。
MDB数据库中,只有一个table表,里面有A,B,C,D,E等字段,我希望在form界面上 输入textbox1.text,然后点击旁边的button按钮,自动查询数据库里面的DBN No字段,然后把这一行都显示出来。
vb.net已经连接数据源 Me.TableTableAdapter.Fill(Me.DatabaseDataSet.Table) 就可以把第一行数据显示出来。
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim keywords As String = TextBox1.Text
Me.TableTableAdapter.FillBy(Me.DatabaseDataSet.Table)
End Sub
上面的代码是定义keywords作为一个string,keywords = textbox1.text
Fillby 的查询是
SELECT Name, [DBN No], cdx, A, B, C, D, E, min, max
FROM [Table]
WHERE ([DBN No] = '& Keywords &')我在textbox1里输入一个DBN No的数值,(类似于1233-1-2),但是为什么form上返回不到任何结果呢?
谢谢。
- 已编辑 Luke.Engineer 2012年10月27日 11:31 修改
- 已更改类型 Luke.Engineer 2012年10月28日 5:33 已经解决问题
全部回复
-
你完全可以不用这个,删除全部的代码,建议我的方法:
Using adapter As New SqlDataAdapter("SELECT [Name], [DBN No], cdx, A, B, C, D, E, [min], [max] FROM [Table] WHERE ([DBN No] = @keywords)","你的连接字符串") Dim dt As New DataTable adapter.Fill(dt) End Using
你好!你上面说的连接字符串是不是“Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database.accdb"” 这一行,我输入之后,运行的时候提示说“Keyword not supported: 'provider'.“ 这个怎么处理呢?
new sqldataadapter,这个sqldataadapter,提示我添加了Imports System.Data.SqlClient这一行。
谢谢。