如何防止accsee数据库变的庞大
站在程序员的角度来说,如何防止数据库变的庞大。也可以说是给各位Asp+Access的程序作者的建议而已。下面是具体的如何防止access数据库变大的方法
① 采用多个数据库,而不是一个数据库。
可以大概指定一定范围,例如从0到1W使用1号数据库。
1W到2W使用2号数据库。
如何才能使用多个数据库呢?
con和rs定义多个。。
con1是一号数据库的,con2是二号数据库的。。
rs1是一号数据库的,rs2是二号数据库的。。
添加:
当数据达到XW条时使用新的conX和rsX。。
修改:
查询要修改的ID号。。去指定是数据库执行操作。
删除:
同修改。
用这个有一个不是很好解决的地方。比如我要查询用户排行,查询积分最大的10个用户。
由于用的多个数据库,而且用的多个rs。。
找到了两种方法,各位依照喜好使用。 www.pcpxp.com
第一种:
Private Function UnionRs(rsA As Recordset, rsB As Recordset) As Recordset
Dim rs As New Recordset, i%
For i = 0 To rsA.Fields.Count - 1
'设置记录集标题列
rs.Fields.Append rsA.Fields(i).Name, rsA.Fields(i).Type, adFldMayBeNull + adFldIsNullable + adFldUpdatable
Next
'添加rsA到rs
If Not rsA.EOF Then
rsA.MoveFirst
If rs.State = adStateClosed Then rs.Open
While Not rsA.EOF
rs.AddNew
For i = 0 To rs.Fields.Count - 1
rs(i) = rsA(i)
Next
rsA.MoveNext
Wend
rs.UpdateBatch
End If
'添加rsB到rs
If Not rsB.EOF Then
rsB.MoveFirst
If rs.State = adStateClosed Then rs.Open
While Not rsB.EOF
rs.AddNew
For i = 0 To rs.Fields.Count - 1
rs(i) = rsB(i)
Next
rsB.MoveNext
Wend
rs.UpdateBatch
End If
'返回合成后的新的记录集


