strSQL = "select * from TableRK where " & Combo1.Text & " like '%" & Text1.Text & "%'order by 编号",我用的access数据库,这条语句好象没起作用,数据库中数据全部显示了,我把代码贴在下面,各位帮我看看
Dim con As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim strSQL As StringDim strcnn As String
Private Sub cmdOK_Click()
Set DataGrid1.DataSource = rs
End SubPrivate Sub Form_Load()Combo1.AddItem "编号"Combo1.AddItem "型号"Combo1.AddItem "序列号"Combo1.ListIndex = 编号strcnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\lingxiu.mdb;"con.Open strcnnrs.CursorLocation = adUseClientstrSQL = "select * from TableRK where " & Combo1.Text & " like '%" & Text1.Text & "%'order by 编号"
rs.Open strSQL, con, adOpenKeyset, adLockBatchOptimistic
End Sub
combo1里是TableRK的字段,Text1中输入的是关键字
Dim con As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim strSQL As StringDim strcnn As String
Private Sub cmdOK_Click()
Set DataGrid1.DataSource = rs
End SubPrivate Sub Form_Load()Combo1.AddItem "编号"Combo1.AddItem "型号"Combo1.AddItem "序列号"Combo1.ListIndex = 编号strcnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\lingxiu.mdb;"con.Open strcnnrs.CursorLocation = adUseClientstrSQL = "select * from TableRK where " & Combo1.Text & " like '%" & Text1.Text & "%'order by 编号"
rs.Open strSQL, con, adOpenKeyset, adLockBatchOptimistic
End Sub
combo1里是TableRK的字段,Text1中输入的是关键字
"% 是通配符 显示所以含有text1的内容
1 Debug.pring (sql) 在立即窗口看看是不是语句中某处有空格或差一个空格
2 先用具体值执行SQL语句,然后一个个替换成所需的变量,
找到是哪一个地方有错误,再来修改语句
原因在于Access支持的SQL标准太早了。
'%" & Text1.Text & "%'order
"% 是通配符 显示所以含有text1的内容你想显示什么效果 ,.... 你这么写是 全显示了含有text1的内容
* 是代表一个字符 不是access专有的 '*" & Text1.Text & "*'order 就是说文本1两边 多1个任意字符所以记录
Dim Rs As New ADODB.Recordset
Dim con As New ADODB.Connection
Rs.CursorLocation = adUseClient
strcnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\xiaohui.mdb;"con.Open strcnnstrSQL = "select * from score where " & Combo1.Text & " like '%" & Text1.Text & "%'"Rs.Open strSQL, con, adOpenKeyset, adLockBatchOptimistic
If Not Rs.EOF Then Set DataGrid1.DataSource = Rs
End SubPrivate Sub Form_Load()
Combo1.AddItem "UserName"Combo1.AddItem "password"Combo1.AddItem "score"Combo1.ListIndex = UserName
End Sub
你的程序我给你改了改,已经运行通过了,你复制过去试试把,看看里面的区别,有一个位置问题
里面为了方便建数据库我设了比较简单的几个参数,你换上你的就行了