2017-01-02 5 views
0

Мое приложение использует базу данных, хранящуюся в файле, доступном через сеть. До сих пор я использовал файл MS-Access (.accdb), но я пытаюсь перейти на SQLite Version 3 (.db3).Установить пароль для базы данных SQLite v3

Я добавил пакет SQLite NuGet в свой проект и создал базу данных SQLite с использованием SQLiteStudio. Я реорганизовал свои объекты базы данных для работы с System.Data.SQLite.SQLiteConnection вместо System.Data.OleDb.OleDbConnection, и он работал хорошо.

Однако моя предыдущая база данных accdb была защищена паролем, и я не знаю, как применить пароль по моей текущей базе данных SQLite.

Может ли кто-нибудь научить меня делать это? Заранее спасибо!

+1

Возможно, [это] (http://stackoverflow.com/questions/1381264/password-protect-a-sqlite-db-is-it-possible) поможет вам – Wudge

ответ

0

the link Я последовал за который Wudge любезно назначенный в комментарии выше, и он работает, но я предпочел бы уточнить, что нужно сделать:

  1. Чтобы установить пароль для незащищенной базы данных:

    Dim conn = New SQLite.SQLiteConnection(
        "Data Source=C:\yourFolder\yourDB.db3;Version=3;") 
    conn.Open() 
    conn.ChangePassword("password") 
    conn.Close() 
    
  2. Чтобы открыть защищенный пароль базы данных:

    Dim conn = New SQLite.SQLiteConnection(
        "Data Source=C:\yourFolder\yourDB.db3;Version=3;") 
    conn.SetPassword("password") 
    conn.Open() 
    conn.Close() 
    

    или

    Dim conn = New SQLite.SQLiteConnection(
        "Data Source=C:\yourFolder\yourDB.db3;Version=3;Password=password;") 
    conn.Open() 
    conn.Close() 
    
  3. Чтобы удалить пароль из защищенной паролем базы данных:

    Dim conn = New SQLite.SQLiteConnection(
        "Data Source=C:\yourFolder\yourDB.db3;Version=3;Password=password;") 
    conn.Open() 
    conn.ChangePassword(String.Empty) 
    conn.Close() 
    

PS. Менеджер базы данных с открытым исходным кодом SQLiteStudio может открывать файлы, защищенные паролем, до тех пор, пока вы выбрали System.Data.SQLite вместо Sqlite 3 в качестве типа своей базы данных. (Требуется v 3.1.1, текущая версия).

+0

Привет VBobCat, я делаю то же самое в мой проект vb.net, но он не работает, и я не понимаю, что я ошибаюсь. Я использую System.Data.SQLite (загружен offccial sqlite-netFx46-setup-bundle-x86-2015-1.0.101.0.exe). Менеджеры использовали DB.Browser.for.SQLite-3.10.1 и SQliteStudio тоже. Я судимая установка пароля из кода и из БДА браузера Это мой код: Dim mDbConnection, как String = «Источник данных = C: \ TestDB.s3db; Version = 3; Dim As New CNN SQLiteConnection (mDbConnection) cnn.SetPassword («тест») cnn.Open() cnn.Close() – Anchor

+0

что именно происходит неправильно – VBobCat

+0

Это исключение: файл открыт, не файл базы данных файл шифруется или не является базой данных – Anchor

 Смежные вопросы

  • Нет связанных вопросов^_^