Как вы можете программно преобразовать ACCDB в MDB?
Есть ли способ программно преобразовать Access 2010 ACCDB
подать в Access 95/97 MDB
файл?
1 ответ
Вот несколько заметок. У меня нет старой версии, с которой можно поиграться, поэтому я не знаю, можете ли вы импортировать больше, чем можете экспортировать:
Dim ws As Workspace
Dim db As Object
Dim tdf As TableDef
Dim qdf As QueryDef
Dim dbExp As Database
Dim acApp As New Access.Application
acApp.OpenCurrentDatabase "z:\docs\demo.accdb"
Set dbExp = acApp.CurrentDb
Set ws = DBEngine.Workspaces(0)
FName = "z:\docs\oldver95.mdb"
''Access 95
Set db = ws.CreateDatabase(FName, dbLangGeneral, dbVersion30)
''You can only export tables and a limited range of datatypes
For Each tdf In dbExp.TableDefs
If Left(tdf.Name, 4) <> "Msys" Then
acApp.DoCmd.TransferDatabase acExport, "Microsoft Access", _
FName, acTable, tdf.Name, tdf.Name
End If
Next
См. http://msdn.microsoft.com/en-us/library/office/bb243161(v=office.12).aspx
Несколько замечаний по использованию VBScript для демонстрации использования движка:
Dim objEngine
Dim objWS
Dim objDB
Dim db: db = "z:\docs\oldver95.mdb"
Set objEngine = CreateObject("DAO.DBEngine.36")
Set objDB = objEngine.OpenDatabase(db)
strSQL="SELECT * FROM Table1"
objDB.CreateQueryDef "Query1", strSQL