zoukankan      html  css  js  c++  java
  • C# Sqlite 数据库加密

    用了ADO.NET 2.0 SQLite Data Provider 这样可以直接利用它来创建一个加密的sqlite数据库
    有关c#代码如下:
    1、创建空的sqlite数据库。

    //数据库名的后缀你可以直接指定,甚至没有后缀都可以
    //方法一:创建一个空sqlite数据库,用IO的方式
    FileStream fs = File.Create(c:\\test.db);
    //方法二:用SQLiteConnection
    SQLiteConnection.CreateFile(c:\\test.db);

    创建的数据库是个0字节的文件。

    2、创建加密的空sqlite数据库

    //创建一个密码为password的空的sqlite数据库
    SQLiteConnection.CreateFile(c:\\test2.db);                
    SQLiteConnection cnn
    =new SQLiteConnection(Data Source=c:\\test2.db);
    SQLiteConnection cnn
    =new SQLiteConnection(Data Source=D:\\test2.db);
    cnn.Open();
    cnn.ChangePassword(
    password);

    3、给未加密的数据库加密

    SQLiteConnection cnn =new SQLiteConnection(Data Source=c:\\test.db);
    cnn.Open();
    cnn.ChangePassword(
    password);

    4、打开加密sqlite数据库

    //方法一
    SQLiteConnection cnn =new SQLiteConnection(Data Source=c:\\test2.db);
    cnn.SetPassword(
    password);
    cnn.Open();
    //方法二
    SQLiteConnectionStringBuilder builder =new SQLiteConnectionStringBuilder();
    builder.DataSource
    =@”c:\test.db;
    builder.Password
    =@”password;
    SQLiteConnection cnn
    =new SQLiteConnection(builder.ConnectionString);
    cnn .Open();

    注:
    A、因为加密的函数是利用windows api,故加密后的数据库只能适用在windows平台,加密的方式是整体文件加密。
    B、加密的算法是RC4,如果你想采用别的加密算法来加密,请参考ADO.NET 2.0 SQLite Data Provider 的源码来修改。
    c、相关sqlite数据库操作类似ADO.NET 2.0。详见ADO.NET 2.0 SQLite Data Provider的帮助文档。
    c、ADO.NET 2.0 SQLite Data Provider 版本为:1.0.53.0 ,SQLite版本 : 3.6.0。
    d、开发环境为vs2008。

    转载于 百度空间



    返回导读目录,阅读更多随笔



    分割线,以下为博客签名:

    软件臭虫情未了
    • 编码一分钟
    • 测试十年功


    随笔如有错误或不恰当之处、为希望不误导他人,望大侠们给予批评指正。

  • 相关阅读:
    HDU 4539郑厂长系列故事――排兵布阵(状压DP)
    HDU 2196Computer(树形DP)
    HDU 4284Travel(状压DP)
    HDU 1520Anniversary party(树型DP)
    HDU 3920Clear All of Them I(状压DP)
    HDU 3853LOOPS(简单概率DP)
    UVA 11983 Weird Advertisement(线段树求矩形并的面积)
    POJ 2886Who Gets the Most Candies?(线段树)
    POJ 2828Buy Tickets
    HDU 1394Minimum Inversion Number(线段树)
  • 原文地址:https://www.cnblogs.com/08shiyan/p/1838707.html
Copyright © 2011-2022 走看看