vb数据库表备份 高分跪求

来源:百度知道 编辑:UC知道 时间:2024/04/30 16:10:30
现有sql2000中数据库(服务器数据库)DBmdi 中有表 t_g ,t_i等等

现在要解决的问题:
当t_g中超过100行 创建一新表t_g_back(t_g_back之前不存在)备份这100行 同时在t_g中删除这个100行(t_g中是采集数据的 行数一直在增加)

本人做的是b/s结构 要求在客户端用vb进行代码实现

请高手帮忙

(注意vb 解决问题另有加分 谢谢了)

我猜想你的t_g表应该是存放数据的一个临时表吧,建议你把临时数据存放到数组里面,不要用数据库来存放。数据库存取有一定的时间,这样容易形成误差,比如纪录已经超过100行了,而我们读到的才100行。数组在内存里,理论上无存取时间。存放数据声明一个二维数组就可以了。

如果你还是想存放在数据库里面,可以用ADOX对数据库进行操作,adox可以创建,删除数据库,表,字段。给你段vb6.0的代码,你将这段代码复制到vb6.0的模块里就能看得很清楚了:
Dim cat As New ADOX.Catalog
Dim ncat As New ADOX.Catalog
Dim tb() As New ADOX.Table
Dim cl As New ADOX.Column
If Dir(Text2.Text) = "" And LCase(Right(Text2.Text, 4)) <> ".txt" And LCase(Right(Text1.Text, 4)) <> ".txt" Then
Text3.ForeColor = &HFF0000
Text3.Text = "开始导出数据库到:" & Text2.Text

filename = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Text1.Text
cat.ActiveConnection = filename

filename = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Text2.Text
ncat.Create filename
ncat.ActiveConnection = filename

fhz = cat.Tables.Count
fhzn = ncat.Tables.Count
ReDim tb(fhz - 1)