1. ½éÉÜ
SQLite ÊÇÒ»¸ö¿ªÔ´µÄǶÈëʽ¹ØÏµÊý¾Ý¿â£¬ÊµÏÖ×Ô°üÈÝ¡¢ÁãÅäÖá¢Ö§³ÖÊÂÎñµÄSQLÊý¾Ý¿âÒýÇæ¡£
ÆäÌØµãÊǸ߶ȱãЯ¡¢Ê¹Ó÷½±ã¡¢½á¹¹½ô´Õ¡¢¸ßЧ¡¢¿É¿¿¡£ ÓëÆäËûÊý¾Ý¿â¹ÜÀíϵͳ²»Í¬£¬SQLite µÄ°²×°ºÍÔËÐзdz£¼òµ¥£¬ÔÚ´ó¶àÊýÇé¿öÏÂ
- ֻҪȷ±£SQLiteµÄ¶þ½øÖÆÎļþ´æÔÚ¼´¿É¿ªÊ¼´´½¨¡¢Á¬½ÓºÍʹÓÃÊý¾Ý¿â¡£Èç¹ûÄúÕýÔÚѰÕÒÒ»¸öǶÈëʽÊý¾Ý¿âÏîÄ¿»ò½â¾ö·½°¸£¬SQLiteÊǾø¶ÔÖµµÃ¿¼ÂÇ¡£
2. °²×°
SQLite on Windows
1£©½øÈë SQL ÏÂÔØÒ³Ãæ£ºhttp://www.sqlite.org/download.html
2£©ÏÂÔØ Windows ϵÄÔ¤±àÒë¶þ½øÖÆÎļþ°ü£º
sqlite-shell-win32-x86-<build#>.zip ¡¡¡¡sqlite-dll-win32-x86-<build#>.zip |
×¢Òâ: <build#> ÊÇ sqlite µÄ±àÒë°æ±¾ºÅ
½« zip Îļþ½âѹµ½ÄãµÄ´ÅÅÌ£¬²¢½«½âѹºóµÄĿ¼Ìí¼Óµ½ÏµÍ³µÄ PATH
±äÁ¿ÖУ¬ÒÔ·½±ãÔÚÃüÁîÐÐÖÐÖ´ÐÐ sqlite ÃüÁî¡£
¿ÉÑ¡: Èç¹ûÄã¼Æ»®·¢²¼»ùÓÚ sqlite Êý¾Ý¿âµÄÓ¦ÓóÌÐò£¬Ä㻹ÐèÒªÏÂÔØÔ´ÂëÒÔ±ã±àÒëºÍÀûÓÃÆä
API
sqlite-amalgamation-<build#>.zip |
ÔÚ ¶à¸ö Linux ·¢ÐаæÌṩÁË·½±ãµÄÃüÁîÀ´»ñÈ¡ SQLite£º
/* For Debian or Ubuntu /* ¡¡¡¡$ sudo apt-get install sqlite3 sqlite3-dev ¡¡¡¡/* For RedHat, CentOS, or Fedora/* ¡¡¡¡$ yum install SQLite3 sqlite3-dev |
SQLite on Mac OS X
Èç¹ûÄãÕýÔÚʹÓà Mac OS Ñ©±ª»òÕ߸üа汾µÄϵͳ£¬ÄÇôϵͳÉÏÒѾװÓÐ
SQLite ÁË¡£
3. ´´½¨Ê׸ö SQLite Êý¾Ý¿â
ÏÖÔÚÄãÒѾ°²×°ÁË SQLite Êý¾Ý¿â£¬½ÓÏÂÀ´ÎÒÃÇ´´½¨Ê׸öÊý¾Ý¿â¡£ÔÚÃüÁîÐд°¿ÚÖÐÊäÈëÈçÏÂÃüÁîÀ´´´½¨Ò»¸öÃûΪ
test.db µÄÊý¾Ý¿â¡£
´´½¨±í£º
sqlite> create table mytable(id integer primary key, value text); ¡¡¡¡2 columns were created. |
¸Ã±í°üº¬Ò»¸öÃûΪ id µÄÖ÷¼ü×ֶκÍÒ»¸öÃûΪ value µÄÎı¾×ֶΡ£
×¢Òâ: ×îÉÙ±ØÐëΪн¨µÄÊý¾Ý¿â´´½¨Ò»¸ö±í»òÕßÊÓͼ£¬Õâô²ÅÄܽ«Êý¾Ý¿â±£´æµ½´ÅÅÌÖУ¬·ñÔòÊý¾Ý¿â²»»á±»´´½¨¡£
½ÓÏÂÀ´Íù±íÀïÖÐдÈëһЩÊý¾Ý£º
sqlite> insert into mytable(id, value) values(1, 'Micheal'); ¡¡¡¡sqlite> insert into mytable(id, value) values(2, 'Jenny'); ¡¡¡¡sqlite> insert into mytable(value) values('Francis'); ¡¡¡¡sqlite> insert into mytable(value) values('Kerk'); |
²éѯÊý¾Ý£º
sqlite> select * from test; ¡¡¡¡1|Micheal ¡¡¡¡2|Jenny ¡¡¡¡3|Francis ¡¡¡¡4|Kerk |
ÉèÖøñʽ»¯²éѯ½á¹û£º
sqlite> .mode column; sqlite> .header on; sqlite> select * from test; id value ----------- ------------- 1 Micheal 2 Jenny 3 Francis 4 Kerk |
.mode column ½«ÉèÖÃΪÁÐÏÔʾģʽ£¬.header ½«ÏÔʾÁÐÃû¡£
Ð޸ıí½á¹¹£¬Ôö¼ÓÁУº
sqlite> alter table mytable add column email text not null '' collate nocase;; |
´´½¨ÊÓͼ£º
sqlite> create view nameview as select * from mytable; |
´´½¨Ë÷Òý£º
sqlite> create index test_idx on mytable(value); |
4. һЩÓÐÓÃµÄ SQLite ÃüÁî
ÏÔʾ±í½á¹¹£º
»ñÈ¡ËùÓбíºÍÊÓͼ£º
»ñȡָ¶¨±íµÄË÷ÒýÁÐ±í£º
sqlite > .indices [table ] |
µ¼³öÊý¾Ý¿âµ½ SQL Îļþ£º
sqlite > .output [filename ] ¡¡¡¡sqlite > .dump ¡¡¡¡sqlite > .output stdout |
´Ó SQL Îļþµ¼ÈëÊý¾Ý¿â£º
sqlite > .read [filename ] |
¸ñʽ»¯Êä³öÊý¾Ýµ½ CSV ¸ñʽ£º
sqlite >.output [filename.csv ] ¡¡¡¡sqlite >.separator , ¡¡¡¡sqlite > select * from test; ¡¡¡¡sqlite >.output stdout |
´Ó CSV Îļþµ¼ÈëÊý¾Ýµ½±íÖУº
sqlite >create table newtable ( id integer primary key, value text ); ¡¡¡¡sqlite >.import [filename.csv ] newtable |
±¸·ÝÊý¾Ý¿â£º
/* usage: sqlite3 [database] .dump > [filename] */ ¡¡¡¡sqlite3 mytable.db .dump > backup.sql |
»Ö¸´Êý¾Ý¿â£º
/* usage: sqlite3 [database ] < [filename ] */ ¡¡¡¡sqlite3 mytable.db < backup.sql |
|