跪求高人指点ADO查询无法进行

来源:百度知道 编辑:UC知道 时间:2024/05/24 02:19:01
Public Sub sms()
Dim no As String
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim constr As String
constr = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\cellsms.mdb" '开ACCSE
conn.CursorLocation = adUseClient
conn.Open constr
rs.Open "select tel from sms where zm= '& text2.text & ' ", conn, 1, 3 '提手机号(无法自动查号码)
Do While Not rs.EOF '判断EOF标记属性(Endoffile)
Text3.Text = rs.Fields("tel")
rs.MoveNext '将游标指针移到下一条记录
Loop
MSComm1.Output = "AT+CMGS" + Chr$(61) + Chr$(34) & Text3.Text & Chr$(34) & vbCrLf
MSComm1.Output = "WARNING:HONGWAIGAOJIANG!"
MSComm1.Output = Chr$(26) + Chr$(90)
End SuB
这自己写的一个过程 (很菜大家见笑!)rs.Open "select tel from sms where zm= '& text2.text & ' ", conn, 1, 3 '提手机号(无法自动查号码) text2.text 这个值是从另一个FORM 中得到的,请大师指点

大概看了一下,没有找到text2.text 被赋值的地方,而且也不应该这么用吧。 首先应该用 request 来接收text2.text这个输入框里面的值,然后再到这里来查询,而且这个值应该是文本,左右两侧是否应该加上单引号。应该改成:rs.Open "select tel from sms where zm= '"& text2.text & "'", conn, 1, 3

还有,要想知道是你那个变量的问题还是查询的问题,你应该先把 text2.text 这个变量改成固定值来测试一下。例如换成这样:rs.Open "select tel from sms where zm= '1234567890'", conn, 1, 3 如果这句能执行,那么就是你的变量有问题。如果还不能执行,那么还需要再找找其他问题了。