互联网上的大多数示例代码都使用access97或2000格式数据库。在数据库创建代码中,提到如果使用Jet OLEDB:Engine Type = 4,则创建的数据库是访问97格式,如果Type = 5但是,当我使用type = 4或甚至使用可视化数据管理器创建一个包含代码的数据库时,创建的格式是访问95(如MS Access 2003打开时所示)。我需要检查哪些内容创建Access 97格式数据库?请帮忙!
答案 0 :(得分:0)
这不是在MS Access 2003中打开它的人工制品吗?源确实似乎表明引擎类型4对于Access 97是正确的。
编辑:显然,引擎类型4对Access 95/97都有效。我再看看。
编辑2:你使用的是什么JET版本? 3.0与Access 95 db,3.5(1)with 97。
相关联答案 1 :(得分:0)
您好。
我成功在Windows 10 + Access 2016 64位上使用VBScript 32bit制作空白访问97格式的MDB文件。
创建" E:\ TEST97.MDB" ,让我们运行此VBScript 32位。(从命令提示符运行(Cmd.exe)并粘贴%SystemRoot%\ SysWow64 \ cscript.exe" C:\ hoge \ MakeAC97.vbs"并输入)
语言一般(英语等)
制作Vbscript" C:\ hoge \ MakeAC97.vbs
传输Access 2003格式mdb," E:\ test2000_2003.mdb
我可以访问1.0 - Access 2003格式的mdb文件
代码示例是此日文文章
[http://qiita.com/Q11Q/items/1793f43a1fd4dd3f480f]
在VBScript 32位上使用SQL,我们可以直接读取Access 97格式的mdb表数据。
[http://qiita.com/Q11Q/items/fc06d858ee0d3c9423f4]
当然,有限,但Access 2016格式accdb文件表和选择查询和联合查询转移到Access 97格式mdb。
[http://qiita.com/Q11Q/items/0ada315f6b5eb9b14f8b]
'%SystemRoot%\SysWow64\cscript.exe "C:\hoge\MakeAC97.vbs"
'Access 2013 Later
'64 / 32 Ok
Const DB_Lang_General = ";LANGID=0x0409;CP=1252;COUNTRY=0"
Const DB_LANG_JAPANESE = ";LANGID=0x0411;CP=932;COUNTRY=0"
Const DB_Lang_Arabic = ";LANGID=0x0401;CP=1256;COUNTRY=0"
Const DB_Lang_ChineseSimplified = ";LANGID=0x0804;CP=936;COUNTRY=0"
onst DB_Lang_ChineseTraditional = ";LANGID=0x0404;CP=950;COUNTRY=0"
Const DB_Lang_Cyrillic = ";LANGID=0x0419;CP=1251;COUNTRY=0"
Const DB_Lang_Czech = ";LANGID=0x0405;CP=1250;COUNTRY=0"
Const DB_Lang_Dutch = ";LANGID=0x0413;CP=1252;COUNTRY=0"
Const DB_Lang_Greek = ";LANGID=0x0408;CP=1253;COUNTRY=0"
Const DB_Lang_Hebrew = ";LANGID=0x040D;CP=1255;COUNTRY=0"
Const DB_Lang_Hungarian = ";LANGID=0x040E;CP=1250;COUNTRY=0"
Const DB_Lang_Icelandic = ";LANGID=0x040F;CP=1252;COUNTRY=0"
Const DB_Lang_Korean = ";LANGID=0x0412;CP=949;COUNTRY=0"
Const DB_Lang_Nordic = ";LANGID=0x041D;CP=1252;COUNTRY=0"
Const DB_Lang_NorwDan = ";LANGID=0x0406;CP=1252;COUNTRY=0" 'Norway and Dennmark
Const DB_Lang_Polish = ";LANGID=0x0415;CP=1250;COUNTRY=0"
Const DB_Lang_Slovenian = ";LANGID=0x0424;CP=1250;COUNTRY=0"
Const DB_Lang_Spanish = ";LANGID=0x040A;CP=1252;COUNTRY=0"
Const DB_Lang_SwedFin = ";LANGID=0x041D;CP=1252;COUNTRY=0"
Const DB_Lang_Thai = ";LANGID=0x041E;CP=874;COUNTRY=0"
Const DB_Lang_Turkish = ";LANGID=0x041F;CP=1254;COUNTRY=0"
Const DB_OPEN_DYNASET = 2
Const DB_APPEND_ONLY = 8
Const DRIVE_NAME = "E:\"
Const FILE_NAME = "TEST97.mdb"
Const oldFile = "E:\test97.mdb"
Const NewFile = "E:\test2000_2003.mdb"
Const cnsDbVersion30_AC95_AC97_Jet30_Jet35 = 32
Const cnsDbVersion20_AC20_Jet20 = 16
Const cndDBVerion10 =1
Dim dbe : Set dbe = CreateObject("DAO.DBEngine.36")
' MDB Start Making...
Set dbe = CreateObject("DAO.DBEngine.36")
Set db = dbe.CreateDatabase(DRIVE_NAME & FILE_NAME, DB_Lang_General, cnsDbVersion30_AC95_AC97_Jet30_Jet35)
Set db = Nothing
Set dbe = Nothing
Call JetCompact
End Sub
Sub JetCompact()
Dim JIRO : Set JIRO = CreateObject("JRO.JetEngine")
Dim strOldConnect : strOldConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & oldFile & ";"
Dim strNewConnect : strNewConnect ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & NewFile & ";Jet OLEDB:Engine Type =5;"
With CreateObject("Scripting.FileSystemObject")
If .FileExists(oldFIle)=False then Wscript.Quit
If .FileExists(NewFile)=True then Wscript.Quit
End With
JIRO.CompactDatabase strOldConnect, strNewConnect
Set Jiro = Nothing
WScript.Echo "Success End"
End Sub