偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Delphi純代碼連SQLite數(shù)據(jù)庫,同時支持數(shù)據(jù)庫的加密解密

數(shù)據(jù)庫 其他數(shù)據(jù)庫 數(shù)據(jù)庫運維
筆者利用Delphi純代碼連SQLite數(shù)據(jù)庫,同時支持數(shù)據(jù)庫的加密解密。本文共包含三個內容。

本文的內容包括:

(1)一個實現(xiàn)了加密解密功能的SQLite3 dll

(2)純Delphi代碼連接SQLite數(shù)據(jù)庫

(3)改進后的純代碼連接SQLite數(shù)據(jù)庫,同時實現(xiàn)了數(shù)據(jù)庫的加密解密

(1)關于SQLite數(shù)據(jù)庫的C++加密實現(xiàn):

SQLite 數(shù)據(jù)庫加密的一種解決方案:

http://blog.csdn.net/benny5609/archive/2008/03/17/2192786.aspx

sqlite3.dll(404kb)

(2)一個純Delphi代碼封裝的SQLite簡單實現(xiàn):  

 http://www.itwriting.com/sqlitesimple.php

感謝以上的作者,我在這里提供的只是對上面二個進行了一些修改和整合,實現(xiàn)了純Delphi代碼連結Sqlite數(shù)據(jù)庫,并支持數(shù)據(jù)庫的加密和解決,所有修改的地方已經(jīng)在Delphi源程序中的進行標注,附件中的源碼是基于D2009版的,如果你用的是其它版本的Delphi,只需要在工程中加入 SQLite3.pas 和 SQLiteTable3.pas(這二個文件就是純Delphi代碼封裝的SQLite實現(xiàn)),而SQLite3.dll是實現(xiàn)了加密解密重新編譯過的,所以這三個文件要同時加入工程(sqlite3.dll只需要放到工程目錄下即可)。

下面簡單介紹一下這個工具的使用方法:

uses SQLiteTable3;

(1)創(chuàng)建數(shù)據(jù)庫

  1. var  
  2.   sql:string;  
  3.   db:TSQLiteDatabase;  
  4. try  
  5.   if FileExists('test.db') then DeleteFile('test.db');  
  6.   //連接數(shù)據(jù)庫,如果數(shù)據(jù)庫文件不存在會自動創(chuàng)建  
  7.   db:=TSQLiteDatabase.Create('test.db','dbpassword');//使用密碼創(chuàng)建數(shù)據(jù)庫    
  8.   //db:=TSQLiteDatabase.Create('test.db',Nil);//無密碼創(chuàng)建數(shù)據(jù)庫  
  9.   //創(chuàng)建USER表  
  10.   sql:='CREATE TABLE USER(ID integer PRIMARY KEY AUTOINCREMENT NOT NULL,NAME VARCHAR(50),HOMEPAGE VARCHAR(255))';  
  11.   db.ExecSQL(sql);  
  12.   //插入一條測試數(shù)據(jù)  
  13.   sql:='INSERT INTO USER VALUES(NULL,"ekinglong","http://www.blogjava.net/ekinglong")';  
  14.   db.ExecSQL(sql);  
  15. finally  
  16.   db.Free;  
  17. end;  

(2)查詢數(shù)據(jù)

     
  1. var  
  2.   sql:string;  
  3.   db:TSQLiteDatabase;  
  4.   tbl:TSQLiteTable;  
  5.   name:string;  
  6.   homepage:string;begintry  
  7.   db:=TSQLiteDatabase.Create('test.db','dbpassword');  
  8.   sql:='SELECT * FROM USER LIMIT 1';  
  9.   tbl:=db.GetTable(sql);  
  10.   if tbl.RowCount>0 then  
  11.   begin  
  12.     name:=tbl.FieldAsString(tbl.FieldIndex['NAME']);  
  13.     homepage:=tbl.FieldAsString(tbl.FieldIndex['HOMEPAGE']);  
  14.     ShowMessage('Name:'+name+#13+'HomePage:'+homepage);  
  15.   end;  
  16. finally  
  17.   tbl.Free;  
  18.   db.Free;  
  19. end; 

原文鏈接:http://www.cnblogs.com/xunxun/archive/2011/03/03/1969682.html

【編輯推薦】

  1. 簡評MySQL和PostgreSQL優(yōu)劣
  2. 在ACCESS中調用后臺存儲過程
  3. 細化解析PostgreSQL的昨天今天和明天
  4. SQLite做為本地緩存應注意的幾大方面




 

責任編輯:艾婧 來源: 博客園
相關推薦

2013-04-10 14:21:35

2017-07-12 09:20:42

SQLite數(shù)據(jù)庫移植

2011-08-24 13:49:45

Access數(shù)據(jù)庫轉化

2011-07-20 12:34:49

SQLite數(shù)據(jù)庫約束

2019-08-15 07:00:54

SQLite數(shù)據(jù)庫內存數(shù)據(jù)庫

2024-03-07 13:02:57

PythonSQLite數(shù)據(jù)庫

2011-07-05 10:16:16

Qt 數(shù)據(jù)庫 SQLite

2011-08-04 18:00:47

SQLite數(shù)據(jù)庫批量數(shù)據(jù)

2011-07-20 13:40:00

SQLite數(shù)據(jù)庫查詢數(shù)據(jù)

2011-07-04 18:02:29

QT Sqlite 數(shù)據(jù)庫

2011-03-17 13:20:43

Java數(shù)據(jù)庫Derby

2013-04-01 10:49:51

iOS開發(fā)sqlite數(shù)據(jù)庫

2024-10-28 16:31:03

2011-08-02 16:16:08

iPhone開發(fā) SQLite 數(shù)據(jù)庫

2011-07-20 12:55:17

SQLite數(shù)據(jù)庫插入數(shù)據(jù)

2018-07-13 09:20:30

SQLite數(shù)據(jù)庫存儲

2011-04-06 09:25:20

MySQL數(shù)據(jù)庫

2011-07-12 15:22:04

SQLite數(shù)據(jù)庫

2013-03-27 09:47:01

Android開發(fā)SQAndroid SDK

2011-03-25 13:34:20

SQLite數(shù)據(jù)庫
點贊
收藏

51CTO技術棧公眾號