MSFlexGrid1控件的问题,急!!!
BookMessage
BookIndex 图书编号
BookName 图书名称
Auther 作者
Publish 出版社
JoinTime 入库时间
Type 类型
State 状态
------------------------------------------
ReaderMessage
ReaderIndex 读者编号
ReaderName 读者名称
Age 年龄
Sex 性别
Duty 职务
------------------------------------------
BorrowMessage
Index 记录编号
BookIndex 图书编号
ReaderIndex 读者编号
BorrowTime 借阅时间
ReturnTime 返还时间
以上是我创建的三个Access表,我想用VB实现这么一个功能:
用MSFlexGrid1控件显示BorrowMessage.BorrowTime , BookMessage.BookName , BorrowMessage.ReturnTime 的内容,在Text文本框中输入ReaderMessage.ReaderIndex,就可以显示该读者相关的借书情况,但我不知如何实现,请各位高手帮帮忙,如果100分不够,还可以加分的,好急呀!!!
问题点数:100、回复次数:6Top
1 楼lihonggen0(李洪根,MS MVP,标准答案来了)回复于 2003-06-04 13:12:30 得分 20
Dim CN As New ADODB.Connection '定义数据库的连接存放数据和代码
Dim Rs As New ADODB.Recordset
CN.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\NWIND.MDB;Persist Security Info=False"
CN.Open
Rs.CursorLocation = adUseClient
Rs.Open "select BorrowMessage.BorrowTime,BookMessage.BookName,BorrowMessage.ReturnTime from BorrowMessage WHERE BorrowMessage.ReaderIndex='" & text1.text & "'",CN, adOpenDynamic, adLockBatchOptimistic
Set MSHFlexGrid1.DataSource = RsTop
2 楼lihonggen0(李洪根,MS MVP,标准答案来了)回复于 2003-06-04 13:16:34 得分 0
大概代码就是如此!
你根据输入的读者编号,查询BorrowMessage里的数据,表格用MSHFlexGrid1显示,你检查一下SQL语句Top
3 楼lxcc()回复于 2003-06-04 13:18:36 得分 0
MSFlexGrid1换成MSHFlexGrid1(支持ADO绑定)
添加 command和text控件
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Private Sub command1_Click()
Dim strSQL As String
strSQL = "SELECT BorrowMessage.BorrowTime , BookMessage.BookName ,BorrowMessage.ReturnTime FROM BookMessage INNER JOIN BorrowMessage ON BorrowMessage.BookIndex = BookMessage.BookIndex INNER JOIN ReaderMessage ON ReaderMessage.ReaderIndex = BorrowMessage.ReaderIndex WHERE ReaderMessage.ReaderIndex " & text1 & ""
rs.Open strSQL, cn, 1, 3
Dim iRecCount As Integer
iRecCount = rs.RecordCount
Set MSHFlexGrid1.DataSource = rs
Dim i As Integer
For i = 1 To RecCount
MSHFlexGrid1.TextMatrix(i, 0) = iCount
Next
MSHFlexGrid1.TextMatrix(0, 0) = "序号"
MSHFlexGrid1.TextMatrix(0, 1) = "借出时间"
MSHFlexGrid1.TextMatrix(0, 2) = "书籍名称"
MSHFlexGrid1.TextMatrix(0, 3) = "归还时间"
rs.Close
End Sub
Private Sub Form_Load()
Dim strCConn As String
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
strCConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\数据库文件名称"
cn.ConnectionString = strCConn
cn.Open
End Sub
Top
4 楼pinelee(我心依旧)回复于 2003-06-04 13:23:33 得分 80
Dim CN As New ADODB.Connection
Dim Rs As New ADODB.Recordset
CN.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\NWIND.MDB;Persist Security Info=False"
CN.Open
Rs.CursorLocation = adUseClient
Rs.Open "select BorrowMessage.BorrowTime as [借阅时间],BookMessage.BookName AS [图书名称],BorrowMessage.ReturnTime as [返还时间] from BooKMessage Left join BorrowMessage On BorrowMessage.BookIndex =BooKMessage.BookIndex WHERE BorrowMessage.ReaderIndex='" & text1.text & "'",CN, adOpenDynamic, adLockBatchOptimistic
Set MSHFlexGrid1.DataSource = Rs
Top
5 楼lxcc()回复于 2003-06-04 15:19:22 得分 0
不明白Top
6 楼gaincool(jiangyx)回复于 2003-06-04 18:43:33 得分 0
sSql = "select t1.BorrowTime, t1.ReturnTime,t2.BookName from BorrowMessage t1,BookMessage t2,ReaderMessage t3 " & _
"WHERE t1.bookindex=t2.bookindex and t1.ReaderIndex=t3.ReaderIndex and t3.ReaderIndex='" & Text1.Text & "'"
Data1.RecordSource = sSql
Data1.Refresh
data1 绑定到MSHFlexGrid1
Top




