一个关于查询的有关问题,请大哥们指教一下.多谢了
一个关于查询的问题,请大哥们指教一下.谢谢了
我在窗体上有text1和text2,还有一个查询按钮,当我点这个按钮时,可以实现查询.数据库是Access的.数据库名称是:jcxt.mdb表的名称是chuchaxt里面有两个字段.一个是No还有一个是date.我要实现在文本框text1里输入数据库里的一个No点查询按钮就可是在text2里显示相应的date.谢谢了.
------解决方案--------------------
'定义连接字符串, 这里mdb放置在d:
Const gstrConn as String = "Provider=Microsoft.Jet.OLEDB.4.0;Password= " " " ";User ID=Admin;Data Source=D:\jcxt.mdb;Persist Security Info=False "
'点查询按钮
Private Sub Command1_Click()
Dim strSQL As String
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
strSQL = " select [date] from chuchaxt where [no] = ' " & text1.Text & " ' "
If ConnectDB(conn, gstrConn, 60) <> vbTrue Then Exit Sub
rs.Open strSQL, conn, adOpenStatic
If Not rs.EOF Then
text2.Text = rs.Fields(0)
End If
rs.Close
Set conn = Nothing
End Sub
Public Sub ConnectDB(ByRef conn As ADODB.Connection, ByVal strConnString As String, ConnectionTimeout As Long)
On Error GoTo modDB_ConnectDB_Error
Set conn = New ADODB.Connection
If conn.Errors.Count > 0 Then
Set conn = Nothing
End If
If (ConnectionTimeout <> -1) Then
conn.ConnectionTimeout = ConnectionTimeout
End If
conn.Open strConnString
Exit Sub
modDB_ConnectDB_Error:
MsgBox "Err "
Set conn = Nothing
End Sub
'btw, 一般字段不用no,date 之类的默认关键字
------解决方案--------------------
'上面连接db函数该为
Public Function ConnectDB(ByRef conn As ADODB.Connection, ByVal strConnString As String, ConnectionTimeout As Long)
On Error GoTo modDB_ConnectDB_Error
Set conn = New ADODB.Connection
If conn.Errors.Count > 0 Then
Set conn = Nothing
End If
If (ConnectionTimeout <> -1) Then
conn.ConnectionTimeout = ConnectionTimeout
End If
conn.Open strConnString
ConnectDB = vbTrue
Exit Function
modDB_ConnectDB_Error:
Set conn = Nothing
ConnectDB = vbFalse
End Function
我在窗体上有text1和text2,还有一个查询按钮,当我点这个按钮时,可以实现查询.数据库是Access的.数据库名称是:jcxt.mdb表的名称是chuchaxt里面有两个字段.一个是No还有一个是date.我要实现在文本框text1里输入数据库里的一个No点查询按钮就可是在text2里显示相应的date.谢谢了.
------解决方案--------------------
'定义连接字符串, 这里mdb放置在d:
Const gstrConn as String = "Provider=Microsoft.Jet.OLEDB.4.0;Password= " " " ";User ID=Admin;Data Source=D:\jcxt.mdb;Persist Security Info=False "
'点查询按钮
Private Sub Command1_Click()
Dim strSQL As String
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
strSQL = " select [date] from chuchaxt where [no] = ' " & text1.Text & " ' "
If ConnectDB(conn, gstrConn, 60) <> vbTrue Then Exit Sub
rs.Open strSQL, conn, adOpenStatic
If Not rs.EOF Then
text2.Text = rs.Fields(0)
End If
rs.Close
Set conn = Nothing
End Sub
Public Sub ConnectDB(ByRef conn As ADODB.Connection, ByVal strConnString As String, ConnectionTimeout As Long)
On Error GoTo modDB_ConnectDB_Error
Set conn = New ADODB.Connection
If conn.Errors.Count > 0 Then
Set conn = Nothing
End If
If (ConnectionTimeout <> -1) Then
conn.ConnectionTimeout = ConnectionTimeout
End If
conn.Open strConnString
Exit Sub
modDB_ConnectDB_Error:
MsgBox "Err "
Set conn = Nothing
End Sub
'btw, 一般字段不用no,date 之类的默认关键字
------解决方案--------------------
'上面连接db函数该为
Public Function ConnectDB(ByRef conn As ADODB.Connection, ByVal strConnString As String, ConnectionTimeout As Long)
On Error GoTo modDB_ConnectDB_Error
Set conn = New ADODB.Connection
If conn.Errors.Count > 0 Then
Set conn = Nothing
End If
If (ConnectionTimeout <> -1) Then
conn.ConnectionTimeout = ConnectionTimeout
End If
conn.Open strConnString
ConnectDB = vbTrue
Exit Function
modDB_ConnectDB_Error:
Set conn = Nothing
ConnectDB = vbFalse
End Function