Export导出Access 直接代码给Access设定一个密码,确保数据不被非授权打开!Merger合并access 代码定义密码后合并数据,怎么写条件:判断当前文件中的表里面某行数据与目标文件表里面的某行数据,所有字段都相同,就不合并,反之就合并当前文件到目标文件表里面。
每个表都有一个主键 身份证号
当前代码如下:
Dim dlg As New SaveFileDialog '定义一个新的SaveFileDialog
dlg.Filter= "Access文件|*.mdb" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
Dim lst As List(Of String)
lst = Connections("廉政档案").GetTableNames
For Each nm As String In lst
Dim ex As New Exporter
ex.SourceTableName = nm '指定导出表
ex.filepath = dlg.FileName '指定目标文件
ex.Export() '开始导出
Next
CompactAccessFile(dlg.FileName,"163.com")
Dim Result As DialogResult
Result = MessageBox.Show("数据备份完毕,是否需要打开文件所在目录?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
Dim Proc As New Process
Proc.File = FileSys.GetParentPath(dlg.FileName)
Proc.Start()
End If
End If
导入代码:
Dim dlg As New openFileDialog '定义一个新的SaveFileDialog
dlg.Filter= "Access文件|*.mdb" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
Dim file As String =dlg.FileName
'For Each File As String In Filesys.GetFiles(dlg.FileName)
If File.EndsWith(".mdb") '如果后缀名是mdb,说明此文件是access格式
Dim lst As List(Of String)
lst = Connections("廉政档案").GetTableNames
For Each nm As String In lst
Dim mg As New Merger
mg.SourcePath = file
mg.Filter = "" '指定合并条件
mg.PassWord="163.com"
mg.SourceTableName = nm
mg.DataTableName = nm
mg.Merge()
Next
Filesys.DeleteFile(File) '合并后删除文件
Else
MessageBox.Show("文件格式不对,请检查并选择mdb格式文件!","温馨提示")
End If
'Next
MessageBox.Show("数据导入完毕|", "提示")
End If
[此贴子已经被作者于2022/3/20 15:00:05编辑过]