在C#中,如何连接已加密的Sqlite数据库_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 在C#中,如何连接已加密的Sqlite数据库

在C#中,如何连接已加密的Sqlite数据库

 2017/8/3 15:31:20  麻将我会  程序员俱乐部  我要评论(0)
  • 摘要:对数据加密分两种,一种是对数据库本身进行加密,另一种是对数据表中的数据进行加密,如果SQLite数据库加密,我这里使用的一个管理工具叫SQLiteDeveloper,如下就可以加密数据库,如果在工具中不提供密码的情况下打开数据库,会给你错误提示如下:,或者在C#使用错误的密码也会给你错误提示:System.Data.SQLite.SQLiteException:“fileisencryptedorisnotadatabase,正确的连接方式就是在连接字符串中提供正确的密码
  • 标签:C# 数据库 数据 连接 SQL

对数据加密分两种,一种是对数据库本身进行加密,另一种是对数据表中的数据进行加密,

如果SQLite数据库加密,我这里使用的一个管理工具叫SQLiteDeveloper,如下就可以加密数据库

如果在工具中不提供密码的情况下打开数据库,会给你错误提示如下:

或者在C# 使用错误的密码也会给你错误提示:

System.Data.SQLite.SQLiteException:“file is encrypted or is not a database

 正确的连接方式就是在连接字符串中提供正确的密码:

class="brush:csharp;gutter:true;">using System;
using System.Collections.Generic;
using System.Data.SQLite;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OpenSqliteDBByPwd
{
    class Program
    {
        static void Main(string[] args)
        {

            string DB_PATH = "Data Source=EncryptedDB.db3; Password=1111";


            using (SQLiteConnection con = new SQLiteConnection(DB_PATH))
            {
                con.Open();
                string sqlStr = @"INSERT INTO Customer(CUST_NO,CUSTOMER)
                                  VALUES
                                  (
                                      3001,
                                      'Allen'
                                  )";
                using (SQLiteCommand cmd = new SQLiteCommand(sqlStr, con))
                {
                    cmd.ExecuteNonQuery();
                }
            }
        }
    }
}

 

发表评论
用户名: 匿名