15

sqlite データベースがあり、データベースのパスワードを使用して C# プログラムから接続したいと考えています。私はNavicatを使用しており、パスワード「test」で暗号化データベースファイルを設定し、コードで私の接続文字列は次のとおりです。

_connection = new SQLiteConnection("Data Source=MedExpress.db;Version=3;Password=\"test\";");

また

_connection = new SQLiteConnection("Data Source=MedExpress.db;Version=3;Password=test;");

しかし、これはうまくいきません。

エラーは次のとおりです。 File opened that is not a database file file is encrypted or is not a database

次のように、パスワードなしでデータベースに接続できます。

_connection = new SQLiteConnection("Data Source=MedExpress.db;Version=3;");

私の質問は、sqlite データベースにパスワードを設定し、C# プログラムから接続する方法です。System.Data.SQLite

4

4 に答える 4

18

これはパスワード付きの接続文字列です

Data Source=filename;Version=3;Password=myPassword;

あなたが述べたように、あなたはsqlite暗号化を設定するためにnavicatを使用します。暗号化とは、データベースにパスワードを設定するのとは異なり、データベースを暗号化したことを意味します。

データベースにパスワードを設定するには、このコードを試してください。

//create file 
SQLite.SQLiteConnection.CreateFile("c:\\mydatabase file.db3")
Dim cn As New SQLite.SQLiteConnection
//set password
cn.ChangePassword("paxword")
//remove password
cn.ChangePassword("")

最初に暗号化を削除します。

于 2012-03-06T15:41:43.057 に答える
5

接続文字列を介してパスワードを提供できます。

ConnectionStrings.comから

データソース=ファイル名;バージョン=3;パスワード=myPassword;

また、彼のリンクを見てください

それが役に立てば幸い

于 2012-03-06T15:25:44.243 に答える