Sqlite ǶÈëʽÊý¾Ý¿âÒÆÖ²ºÍʹÓÃ
1. Ô´´úÂëµÄ»ñÈ¡
sqliteÊÇÒ»¸ö¹¦ÄÜÇ¿´ó¡¢Ìå»ýСÔËËãËÙ¶È¿ìµÄǶÈëʽÊý¾Ý¿â£¬²ÉÓÃÁËÈ«CÓïÑÔ·â×°£¬²¢ÌṩÁ˰ËÊ®¶à¸öÃüÁî½Ó¿Ú£¬¿ÉÒÆÖ²ÐÔÇ¿£¬Ê¹Ó÷½±ã¡£
ÏÂÔØµØÖ·£ºhttp://sqlite.org/download.html
sqliteÔ´´úÂ룺sqlite-3.6.17.tar.gz
2. sqliteÒÆÖ²µ½x86 for linux
l ½âѹÎļþ
//´´½¨Ò»¸öÎļþ¼Ð£¬½«Ô´´úÂë·ÅÔÚÕâ¸öÎļþ¼ÐÖС£
mkdir /work/sqlite
cp sqlite-3.6.17.tar.gz /work/sqlite
//½âѹÎļþ
cd /work/sqlite
tar xvzf sqlite-3.6.17.tar.gz
l ÅäÖÃ
//½¨Á¢x86Ŀ¼
mkdir sqlite_x86
//´ò¿ªÎļþ
cd sqlite-3.6.17
//ÅäÖÃsqlite
./configure --prefix=/work/sqlite/sqlite_x86 --disable-tcl
l ±àÒë
make
l °²×°
make install
l ²âÊÔ
µ±°²×°Íê³ÉÒԺ󣬰²×°Îļþ»á°²×°ÔÚ/work/sqlite/sqlite_x86Ŀ¼ÖУ¬Ò»ÖÖ²úÉúÁË£¬lib,includeºÍbinÈý¸öÎļþ¼Ð£¬·Ö±ðÊÇ¿âÎļþ£¬Í·ÎļþºÍ¿ÉÖ´ÐÐÎļþ¡£
µ½ÕâÀïÊDz»ÊÇÓеãÔ¾Ô¾ÓûÊÔÁË£¬Êǵģ¬ÎÒÃÇ¿ÉÒÔ²âÊÔsqliteÁË£¬µ±Îļþ°²×°ºó£¬ÎÒÃÇ¿ÉÒÔÖ±½Óͨ¹ý°²×°ºÃµÄsqlite3À´ÊµÏÖ¡£
cd sqlite_x86/bin
./sqlite3 test.db //´ò¿ª»ò´´½¨test.dbÊý¾Ý¿âÎļþ
create table test (id integer primary key, value text); //´´½¨±í¸ñºÍ×Ö¶ÎÃû
insert into test (value) values('hxl'); //Ìí¼ÓÒ»ÌõÊý¾Ý
insert into test (value) values('sqlite'); //Ìí¼ÓÒ»ÌõÊý¾Ý
insert into test (value) values('test'); //Ìí¼ÓÒ»ÌõÊý¾Ý
insert into test (value) values('for'); //Ìí¼ÓÒ»ÌõÊý¾Ý
insert into test (value) values('linux'); //Ìí¼ÓÒ»ÌõÊý¾Ý
//µ½´ËÊý¾Ý¿â»ù±¾¼ÒÀï¾ÍÍê³ÉÁË£¬À´¿´¿´Êý¾Ý¿âÀïÃæµÄÎļþ°É
.mode col
.headers on //´òÓ¡³öÊý¾Ý¿âµÄ±íÍ·
select * from test; //ÏÔʾÊý¾Ý¿âÖеÄËùÓÐÎļþ
.exit //Í˳ö
3. sqliteÒÆÖ²µ½arm
l ÅäÖÃ
//½¨Á¢x86Ŀ¼
mkdir ../../sqlite_arm
//´ò¿ªÎļþ
cd ../../sqlite-3.6.17
//ÅäÖÃsqlite
./configure --prefix=/work/sqlite/sqlite_arm --disable-tcl —host=arm-linux
l ±àÒë
make
l &
Ïà¹ØÎĵµ£º
ÕâÁ½ÌìC/SµÄÏîÄ¿ÖÐÓõ½ÁËsqlite£¬Õâ¸öС¶«Î÷»¹ÕæÊǺÃÓ᣷ÃÎÊËٶȺܿ첻˵£¬Éú³ÉµÄÊý¾Ý¿âÎļþÒ²ºÜС¡£·Ç³£ÊʺÏСÐÍÏîÄ¿µÄÊý¾Ý¿â¡£winceÖÐÇ¿ÁÒ½¨ÒéʹÓá£
²»¹ý½ñÌìÓöµ½Ò»¸öÎÊÌâÈÃÈËÍ·´ó£¬deleteÊý¾ÝµÄʱºòÌáʾno such table¡£
Êý¾Ý¿âÖеıíÃ÷Ã÷´æÔÚ£¬ÔÚÊý¾Ý¿âÖÐÖ´ÐÐdeleteµÄsqlҲûÓÐÎÊÌâ¡£¿´À´²»ÊÇsqlÓï¾äµÄÎÊÌâ¡£
µ«ÊÇÖ ......
Ö÷Ҫͨ¹ýpragmaÖ¸ÁîÀ´ÊµÏÖ¡£
±ÈÈ磺 ¿Õ¼äÊÍ·Å¡¢´ÅÅÌͬ²½¡¢Cache´óСµÈ¡£
²»Òª´ò¿ª¡£Ç°ÎÄÌá¸ßÁË£¬VacuumµÄЧÂʷdz£µÍ£¡
PRAGMA auto_vacuum;
PRAGMA auto_vacuum = 0 | 1;
²éѯ»òÉèÖÃÊý¾Ý¿âµÄauto-vacuum±ê¼Ç¡£
Õý³£Çé¿öÏ£¬µ±Ìá½»Ò»¸ö´ÓÊý¾Ý¿âÖÐɾ³ýÊý¾ÝµÄÊÂÎñʱ£¬Êý¾Ý¿âÎļþ²»¸Ä±ä´óС¡£Î´Ê¹ÓõÄÎļþÒ³±»±ê¼Ç²¢ÔÚÒÔ ......
http://www.umgr.com/blog/PostView.aspx?bpId=36294
1. Ö´ÐÐsqlÓï¾ä
int sqlite3_exec(sqlite3*£¬ const char *sql£¬ sqlite3_callbacksql Óï·¨
£¬ void *£¬ char **errmsg );
Õâ¾ÍÊÇÖ´ÐÐÒ»Ìõ sql Óï¾äµÄº¯Êý¡£
µÚ1¸ö²ÎÊý²»ÔÙ˵ÁË£¬ÊÇÇ°Ãæopenº¯ÊýµÃµ½µÄÖ¸Õ롣˵ÁËÊǹؼüÊý¾Ý½á¹¹¡£
µÚ2¸ö²ÎÊýconst char ......
¡¾¹¤×÷»·¾³£º»ùÓÚÓÑÉÆÖ®±Ûmini2440¿ª·¢°å+Qtopia2.2°æ±¾+RedHat9+SQLite-3.3.6¡¿
1.QtopiaÖÐʹÓÃSQLite
ÓÉÓÚQt2²»Ö§³ÖÊý¾Ý¿â²Ù×÷£¬£¨Qt3°æ±¾¾ÍÌṩÁËÖ§³ÖÊý¾Ý¿â²Ù×÷µÄÀ࣬µ«ÊÇQtopia2±È½Ï¾µä£¬ÊÇ»ùÓÚQt2µÄ£¬Ã»°ì·¨£¡£©ËùÒÔÔÚQt/Qtopia³ÌÐòÖÐÐèÒªÊý¾Ý¿âʱ£¬¿ÉÒÔ¿¼ÂÇÔÚQtÖÐʹÓÃLinuxϲÙ×÷SQLiteÊý¾Ý¿âµÄ·½·¨¡££¨±í´ïµÄÓе ......
import os
import unittest # °üº¬µ¥Ôª²âÊÔÄ£¿é
import sqlite3 as sqlite # °üº¬sqlite3Ä£¿é
def get_db_path():
return "sqlite_testdb"
class TransactionTests(unittest.TestCase): # µ¥Ôª²âÊÔµÚÒ»²½:¡¡ÓÉTestCaseÅÉÉúÀà
def setUp(self): # µ¥Ôª²âÊÔ»·¾³ÅäÖÃ
......