Sub 备份数据()Dim Cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim myData As String '数据库名称变量
Dim myTable As String '新数据表名称变量
Dim myOldTable As String '现存的数据表名称变量
Dim SQL As String
'设置数据库名称(包括完整路径)
myData = App.Path & "\数据库.mdb"
myTable = "数据表" '要创建的数据表名称
myOldTable = "备用数据表" '现存的数据表名称
'建立与数据库的连接
With Cnn
.Provider = "Microsoft.Jet.OLEDB.4.0"
.Open myData
End With
'删除原有的数据表
SQL = "drop table " & myTable
Set rs = Cnn.Execute(SQL)
'创建新的数据表
SQL = "Select * into " & myTable & " From " & myOldTable
Set rs = Cnn.Execute(SQL)
MsgBox "数据表备份成功!", vbInformation, "备份数据表!"
Cnn.Close
Set rs = Nothing
Set Cnn = Nothing
End Sub 我根据"数据库.mdb"中的"备用数据表"来备份"数据表".在执行上面过程后备份成功的"数据表"中的数据结构却变动了... ...
备份前:(备用数据表)
职工编号:文本型,长度5,不允许为空,主键.
职员姓名:文本型,长度6,不允许为空.
备份后:(数据表)
职工编号:文本型,长度5,允许为空,主键无
职员姓名:文本型,长度6,允许为空.
SQL语句怎么写?????
才能约束使备份前后的数据结构不变动呢,麻烦老师朋友们帮我看看,谢谢!
抱歉!!!!!!!!!!没有更多的分了.
Dim rs As New ADODB.Recordset
Dim myData As String '数据库名称变量
Dim myTable As String '新数据表名称变量
Dim myOldTable As String '现存的数据表名称变量
Dim SQL As String
'设置数据库名称(包括完整路径)
myData = App.Path & "\数据库.mdb"
myTable = "数据表" '要创建的数据表名称
myOldTable = "备用数据表" '现存的数据表名称
'建立与数据库的连接
With Cnn
.Provider = "Microsoft.Jet.OLEDB.4.0"
.Open myData
End With
'删除原有的数据表
SQL = "drop table " & myTable
Set rs = Cnn.Execute(SQL)
'创建新的数据表
SQL = "Select * into " & myTable & " From " & myOldTable
Set rs = Cnn.Execute(SQL)
MsgBox "数据表备份成功!", vbInformation, "备份数据表!"
Cnn.Close
Set rs = Nothing
Set Cnn = Nothing
End Sub 我根据"数据库.mdb"中的"备用数据表"来备份"数据表".在执行上面过程后备份成功的"数据表"中的数据结构却变动了... ...
备份前:(备用数据表)
职工编号:文本型,长度5,不允许为空,主键.
职员姓名:文本型,长度6,不允许为空.
备份后:(数据表)
职工编号:文本型,长度5,允许为空,主键无
职员姓名:文本型,长度6,允许为空.
SQL语句怎么写?????
才能约束使备份前后的数据结构不变动呢,麻烦老师朋友们帮我看看,谢谢!
抱歉!!!!!!!!!!没有更多的分了.
解决方案 »
- 如何将用变量表示数据库字段
- vb 实现套打?怎么测量位置啊?
- 最小化到托盘后无法响应mousemove事件
- 请问api函数SHAddToRecentDocs的变量dwFlags的SHARD_FILE和SHARD_PIDL常量分别应该怎么定义?
- VB这是怎么搞的,有什么方法或是其它的函数吗?val("0.15")=.15
- 怎么为DTPICKER设处值?
- 字符串,我哪错了?
- 在DX8的sdk(for vb)文档里面没有单独的directshow文档吗?在Vb里面如何使用directshow?
- 请问 VB程序能否设预编译开关
- 如何自动设置中/英文输入法
- 数据结构发生变化!!!!!!!
- vb6中 如何判断 variant变量“不”为空,急。。。。。。。
建议用引用jro对象,备份修复压缩全有了:Public Function RepairMdb(Sou As String, Des As String) As Long
On Error GoTo Err_RepairMdb
'Sou: 源mdb文件路径和名称;Des: 目标mdb文件路径和名称
Dim miJRO As JRO.JetEngine
Set miJRO = New JRO.JetEngine
miJRO.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0; " _
& "Data Source=" & Sou & ";" _
& "Jet OLEDB:Database Password=zxcvbnm", _
"Provider=Microsoft.Jet.OLEDB.4.0; " _
& "Data Source=" & Des & ";" _
& "Jet OLEDB:Database Password=zxcvbnm"
RepairMdb = 1
Exit_RepairMdb:
Set miJRO = Nothing
Exit Function
Err_RepairMdb:
Msg = Err.Description
RepairMdb = -1
Resume Exit_RepairMdb
End Function