即使密码错误也可以访问Sqlite数据库

时间:2018-10-17 06:55:46

标签: c# .net sqlite

在下面的C#.Net Windows /桌面应用程序代码中,我在连接数据库时输入了错误的密码,但是消息框仍然显示“打开”。

SQLiteConnection conn = new SQLiteConnection("Data Source=DMB.sqlite;Version=3;");
conn.SetPassword("password");
conn.Open();
conn.Close();
conn = new SQLiteConnection("Data Source=DMB.sqlite;Version=3;Password=cdssss;");
conn.Open();
MessageBox.Show(conn.State.ToString());

为什么密码错误时仍然打开?

1 个答案:

答案 0 :(得分:0)

此行为是设计使然的.net sqlite驱动程序:

  

这是设计使然。仅当您尝试从-OR-读取时出现错误消息   写入基础数据库文件。通常不打开数据库   执行任一操作。

     

建议您在一些知名表上执行SELECT语句   (例如“ sqlite_master”)打开数据库后,   确定它是否处于可用状态。

摘录于3eb097e917a7740f3499aae66e9a3cd021e9f81c票证:

https://system.data.sqlite.org/index.html/tktview/3eb097e917a7740f3499