Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > ASP > Microsoft.Jet.OLEDB vs. зашифрованная БД Access


Автор: Abracadabr 20.5.2006, 03:57
После установки пароля на БД Access открытие БД даже с указанием пароля стало невозможным (пробовал в VBScript-ASP, VBA, VBScript - WSH).
Пример кода (если пароля на БД нет и соответсвующие поля при установке соединения к БД пусты - то все работает):
Код
Set cnn = CreateObject("ADODB.Connection")
With cnn
    .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("00.mdb") & "; User ID=Admin; UID=Admin; Password=123;"                             
    .Mode = 3 'adModeReadWrite
    .Open , "Admin", 123
End With


Выдаваемая ошибка:

Цитата
Microsoft JET Database Engine (0x80040E4D)
Не удается запустить приложение. Системная база данных отсутствует или открыта с монопольным доступом другим пользователем.
/n/00.asp, line 60 


Интересно то, что при использовании строки подключения сгенеренной InterDev 6 все работает нормально   smile :

Цитата
"Provider=MSDASQL.1;Extended Properties=""DBQ=C:\00.mdb;DefaultDir=C:\;Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;ImplicitCommitSync=Yes;MaxBufferSize=512;MaxScanRows=8;PageTimeout=5;Threads=3;UID=admin;UserCommitSync=Yes"";"


В приложенном архиве – БД + примеры на  VBScript-ASP и VBScript-WSH.  

Автор: Abracadabr 20.5.2006, 15:13
Нешел решение тут: http://p2p.wrox.com/archive/asp_database_setup/2000-12/0.asp
Код

Set cnn = Server.CreateObject("ADODB.Connection")
With cnn
    .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("00.mdb") & "; Jet OLEDB:Database Password=123;" ' <-------
    .Mode = 3 'adModeReadWrite
    .Open 
End With  
 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)