Создание базы данных формата Access 97 - PullRequest
2 голосов
/ 11 августа 2010

В большинстве примеров кодов в Интернете используется база данных формата access97 или 2000. В коде создания базы данных было упомянуто, что если используется Jet OLEDB: Engine Type = 4, то создается база данных в формате access 97, а если Type = 5чем доступ 2000 формат. Но когда я создаю базу данных с кодом, используя type = 4 или даже с визуальным менеджером данных, создается формат доступа 95 (как показано при открытии с MS Access 2003). Что нужно проверить, чтобысоздать базу данных формата Access 97?Пожалуйста, помогите!

Ответы [ 2 ]

0 голосов
/ 08 июля 2017

Привет.

Мне удалось создать файл MDB в формате Blank Access 97 с 32-битным VBScript в Windows 10 + Access 2016 64-битный.

Чтобы создать «E: \ TEST97.MDB», давайте запустим этот 32-битный VBScript (запуск из командной строки (Cmd.exe) и вставим% SystemRoot% \ SysWow64 \ cscript.exe «C: \ hoge \ MakeAC97.vbs». и введите)

Общий язык (английский и т. Д.)

Сделать Vbscript "C: \ hoge \ MakeAC97.vbs

Передача Access 2003, формат mdb, "E: \ test2000_2003.mdb

Я могу получить доступ к 1.0 - файл mdb формата Access 2003

Пример кода этой японской статьи

[http://qiita.com/Q11Q/items/1793f43a1fd4dd3f480f]

И используя SQL на 32-битном VBScript, мы можем напрямую читать данные таблицы mdb формата Access 97.

[* * тысяча двадцать-один

Конечно, существует ограниченный, но 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

0 голосов
/ 11 августа 2010

Это не артефакт открытия его в MS Access 2003?Источники действительно указывают, что тип двигателя 4 является правильным для Access 97.

Редактировать: очевидно, Тип двигателя 4 действителен для обоих Access 95/97.Я посмотрю еще раз.

Редактировать 2: Какую версию JET вы используете?3.0 связан с Access 95 дБ, 3,5 (1) с 97.

...