Исключение OleDB: не удалось найти устанавливаемый ISAM - PullRequest
0 голосов
/ 15 апреля 2011
Dim con As New OleDb.OleDbConnection
Sub connecttodatabase(ByVal fileselected As String)
    Dim databasepassword
    con.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0; Data Source = " &     fileselected
    Try
        con.Open()
    Catch e As OleDb.OleDbException
        If e.Message = "Not a valid password." Then
            Console.WriteLine("Database has a password. Please enter password to continue.")
            databasepassword = Console.ReadLine()
            con.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0; Data Source = " & fileselected & ";JetOLEDB:Database Password=" & databasepassword & ";"
            con.Open()
        End If
        errorid = 1
    Finally
    End Try
End Sub

Ошибка, с которой я сталкиваюсь, возникает во втором con.Open (), когда я пытаюсь подключиться к файлу базы данных .mdb, который я создал при доступе, функция правильно сообщает мне, что у меня есть пароль, но затем один разЯ ввожу свой пароль, я получаю ошибку, определенную в заголовке, и я понятия не имею, почему.Любая помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 15 апреля 2011

Попробуйте вместо этого: Provider = Microsoft.Jet.OLEDB.4.0; Источник данных = C: \ mydatabase.mdb; Идентификатор пользователя = admin; Пароль = YOURPASS;


Кроме того, какие исключенияты получаешь от первого звонка открыть БД?Может быть, это та же проблема: ISAM нет.Попробуйте переустановить MDAC:

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=78cac895-efc2-4f8e-a9e0-3a1afbd5922e

...