在ACCESS数据库中,怎么把数据库中的指定行和列的数据读到一个数组,比如说我要把一个表的为1的行和列读出,并记录这些行和列?怎样实现,谢谢!
解决方案 »
- 如何将采集到的GPS的UTC时间转BJ时间
- 找不到数据环境设计器
- 求思路即部分关于vb编写word插件
- MM求助!VB+数据库
- 急问VB工程中如何引入class module
- 如何通过同一个存储过程,返回多个结果集。如能提供点范例代码,感激不尽!
- COM+客户端程序能在什么操作系统下运行?
- 很急!请众位大侠帮忙解决一个数据库的问题,涉及到我未来的工作前景,多谢大家!
- VB中类型转换的函数有哪些?
- 请教:我用vb,Sql Server 2000写了一个MIS系统,但是不知道怎么样将时间2002-3-12格式化为2002-03-12????急急急!谢谢!
- VB 如何检测到光驱符号?
- 请高手指教ActiveX控件中的public变量问题???
i=0
do while not rs.eof
i = i + 1 'i为行
rs.movenext
loop
If rs.Fields(i & j) = "1" Then
....
但是这样提示出错了
if not (rs.bof or rs.eof) then rs.moveFirst
for rsCol=1 to i
if not rs.eof then rs.moveNext
next
if rs.Fields(j).value="1" then
......
end if
i=0
do while not rs.eof
i = i + 1 'i为行
if i = 行编号 then
xxx = rs.fields(列编号)
exit do
else
rs.movenext
end if
loop
dim i%,j%,RowCol as Collection
rs.CursorLocation=adUseClient
set rs=cn.execute("select * from tableName")'先查出所有的记录
if not rs.eof then rs.moveFirst
for i=1 to rs.recordCount
for j=1 to rs.Fields.Count
if rs.fields(j).value="1" then RowCol.add i & "," & j '用集合来记录行和列
next
if not rs.eof then
rs.moveNext
else
rs.moveLast
end if
nextRowCol的值:
1,2 ’第1行第2列的值为1
1,4 ’第1行第4列的值为1
1,6 ’第1行第5列的值为1
4,5 ’第4行第5列的值为1
j 从1开始,那第0列不就没检查到吗?这句
for j=1 to rs.Fields.Count
if rs.fields(j).value="1" then RowCol.add i & "," & j '用集合来记录行和列
next
应该为:
for j=1 to rs.Fields.Count
if rs.fields(j-1).value="1" then RowCol.add i & "," & j '用集合来记录行和列
next
纯属个人意见……
Dim rs As DAO.RecordsetPrivate Sub Command1_Click()
Dim i%, j%
Dim a(1 To 100)
Dim b(1 To 100)
Dim x%, y%
x = 1: y = 1
If Not rs.EOF Then rs.MoveFirst
For i = 1 To rs.RecordCount
For j = 1 To rs.Fields.Count
If rs.Fields(j).Value = "1" Then
a(x) = i '用集合来记录行和列
b(y) = j
x = x + 1
y = y + 1
End If
Next
If Not rs.EOF Then
rs.moveNext
Else
rs.MoveLast
End If
Next
End SubPrivate Sub Form_Load()
Set daodb = OpenDatabase(App.Path & "\db.mdb")
Set rs = daodb.OpenRecordset("select * from class")
If rs.RecordCount > 0 Then
rs.MoveLast
rs.MoveFirst End If
End Sub