现在有一个用Access做的数据库文件db1.mdb,里面有一个表为“数据表”。现在想把这个“数据表”里的数据导入VB中的二维数组变量A(2,10)中。请问如何实现?谢谢!
现在有一个用Access做的数据库文件db1.mdb,里面有一个表为“数据表”。现在想把这个“数据表”里的数据导入VB中的二维数组变量A(2,10)中。请问如何实现?谢谢!
这个问题前面也有人问的,我自己也做过,具体步骤如下:
1 先打开数据库,应该会吧!
Dim i%,j%,A!(),m%,n%
Dim mlink As String, mpath As String, macc As String
Dim Cnn As New ADODB.Connection
Dim Rst As New ADODB.Recordset
mlink = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= db1.mdb"
macc = "select * from 数据表"
Cnn.Open mlink
Set Rst = New ADODB.Recordset
Rst.Open macc, Cnn, adOpenKeyset, adLockOptimistic
2 获得表的字段数和记录数
Rst.MoveLast
i = Rst.RecordCount - 1
j = Rst.Fields.Count - 1
3 利用循环赋值
ReDim A(i, j)
For m = 0 To i
If m > 0 Then
Rst.MoveNext
If Rst.EOF Then
Rst.MoveLast
End If
Else
Rst.MoveFirst
End If
For n = 0 To j
A(m, n) = Rst.Fields(n)
Print A(m, n);
Next n
Print
Next m
Cnn.Close
基本上不管你的表有多少字段和记录都可以实现,包括你的A(2,10)
不用客气,大家都是新手!
我接触数据库也不是很长时间!用过的一些属性我知道,好多没用过的我 也不知道.
现在我也在求ADO相关的知识!
你可以问xinfresh,purana等几位版主,我的好多都是chenzhao解决的!
1 "Provider=Microsoft.Jet.OLEDB.4.0"是数据库引擎,你不用管它,一般用代码打开数据库的时候都需要,如果用ADO控件的时候只需要设置就行了!它本身就在VB里面.
2 Open方法打开记录集的时候一般有四个参数,(macc,Cnn这两个你知道的),adOpenKeyset具体意思我也不清楚,adLockOptimistic是开放式.Open方法的其他参数,我也在求!
3 Rst.RecordCount指记录集的记录数,Rst.Fields.Count指记录集的字段数.
4 Rst.EOF指记录集指针移动时,判断是否到了最后一条记录,Rst.Fields(n)指某一条记录里面的某一个字段的值.
给你一个建议,你找本数据库方面的书籍看看,自己从最简单的开始操作!不懂的再来问,效果会更好!!
Dim a
Private Sub Command1_Click()
g.Rows = UBound(a, 2) + 2
g.Cols = UBound(a, 1) + 2
For i = 1 To UBound(a, 2) + 1
For j = 1 To UBound(a, 1) + 1
g.TextMatrix(i, j) = IIf(IsNull(a(j - 1, i - 1)), "null", a(j - 1, i - 1))
Next
Next
End Sub
Private Sub Form_Load()
Dim conn As New ADODB.Connection
conn.ConnectionString = "provider=sqloledb;data server=jhd001;database=jxc10s;uid=sa;pwd="
conn.Open
Dim rs As New ADODB.Recordset
rs.Open "fila02a", conn, 1, 1
a = rs.GetRows()
End Sub
谢谢版主的指点!现在还有一个有关数据库的路径问题想请教一下:
在程序中有这样一行代码
mlink1 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb"
db1.mdb这个文件放在VB程序安装目录C:\Program Files\Microsoft Studio\VB98下,而我编的VB程序放在E:\VB目录下。请问:在对程序进行打包时,还需要将db1.mdb这个文件复制到E:\VB目录下吗?
谢谢!
版主的意思是将该行语句改为"Data Source="& app.path & "db1.mdb",然后把db1.mdb这个文件放在E:\VB下面,对E:\VB文件夹进行打包就可以了?