SQLite ¼ò½é
SQLite ÊÇÒ»¸öʵÏÖÁËÍ걸µÄ£¨self-contained)£¬¿ÉǶÈëµÄ(embeddable)£¬ÁãÅäÖÃ(zero-configuration)µÄSQLÊý¾Ý¿âÒýÇæµÄСÐ͵ÄCº¯Êý¿â¡£Ëü°üº¬ÒÔϵÄÌØµã£º
.
ÊÂÎñ´¦ÀíÔ×Ó»¯(atomic)£¬Ò»Ö»¯(consistent)£¬³Ö¾Ã»¯(isolated)£¬¾øÔµ»¯(durable)£¬¼´Ê¹ÊÇÔÚϵͳ±ÀÀ£ºÍµôµçʱ
ÁãÅäÖ㬲»ÐèÒªÉèÖûòÕß¹ÜÀí
ʵÏÖÁËSQL92µÄ´ó²¿·Ý±ê×¼ £¨²»Ö§³ÖÌØÐÔ£©
Õû¸öµÄÊý¾Ý¿â±»´¢´æÔÚµ¥¸öµÄ´ÅÅÌÎļþÉÏ
Êý¾Ý¿âÎļþÄܹ»±»²»Í¬×Ö½ÚÐòµÄ»úÆ÷Ëù¹²ÓÃ
Ö§³ÖT×Ö½ÚºÍG×Ö½Ú´óСµÄ×Ö·û´®ºÍ¿é(blob)
СÐ͵ĴúÂëºÛ¼£(small code footprint)£¬ÍêÈ«ÅäÖúõÄСÓÚ250kiB£¬Ê¡ÂÔµôһЩ¿ÉÑ¡ÓõÄÌØÐԵĽ«Ð¡ÓÚ150KiB
´ó²¿·ÖµÄÒ»°ã²Ù×÷±ÈÁ÷ÐеÄC/SÊý¾Ý¿âÒª¿ì
¼òµ¥ÈÝÒ×ʹÓõÄAPI¡£
°üº¬ÁËTCLµÄ°ó¶¨£¬ÒÔ¼°ÆäËû¸÷ÖÖ²»Í¬µÄ¿ÉÓÃÓïÑԵİ󶨡£
´úÂëÓÐÁ¼ºÃµÄ×¢ÊÍ£¬²âÊÔ¸²¸ÇÂʳ¬¹ý98£¥
Äܹ»ÒÔµ¥¸ö¼òµ¥ANSI£CµÄÔ´ÎļþµÄÐÎʽÇáÒ׵IJåÈëµ½ÁíÒ»¸ö¹¤³ÌÖÐ
Í걸ÐÔ£¬Ã»ÓжîÍâµÄÒÀÀµ¹ØÏµ¡£
Ô´´úÂëÊǹ«¹²µÄ£¬ÓÃ;¹ã·º
SQLiteµÄ·¢ÐаæÖаüº¬ÁËÒ»¸ö¶ÀÁ¢µÄÃüÁîÐÐÈë¿Ú³ÌÐò£¨sqlite£©£¬Ëû¿ÉÒÔÓÃÀ´¹ÜÀíSQLiteÊý¾Ý¿â£¬²¢ÇÒÒ²¿ÉÒÔ×÷Ϊһ¸öʹÓÃSQLiteº¯Êý¿âµÄÒ»¸öÀý×Ó¡£
ÔÚ¹Ù·½ÍøÕ¾ÉÏÌṩÁË¿ìËÙÈëÃŽ̳̣¬Ò»°ãµÄÔÚlinuxÏÂÓÐC±à³ÌµÄÈË»ù±¾É϶¼ÄÜÁ˽⣬ֻÊǸоõÓеãǷȱ¡£
´´½¨database
$sqlite3 test.db
¾Í¿ÉÒÔ´´½¨ÄãËùÒªµÄdatabaseÁË£¬Äã¿ÉÒÔÔÚsqllite3ÖеÄÃüÁîÐеÄÌáʾ·ûºóÖÐÓÃsqlÓïÑÔ´´½¨Ìí¼Ó×Ô¼ºµÄ±íºÍÊý¾Ý£¬µ±È»ÄãÒ²¿ÉÒÔʹÓÃËûÌṩµÄCµÄapiÀ´×öÀàËÆµÄÊ¡£
ÏÂÃæµÄ³ÌÐòÊǹÙÍøÉϵÄÒ»¸öʵÀý,Ö÷ÒªµÄ¹¦ÄÜÊÇ»ù±¾µÄʵÏÖÁËÒ»¸öÀàËÆÓësqlite3ÃüÁîµÄ³ÌÐò
test.c
#include <stdio.h>
#include <sqlite3.h>
static int callback(void *NotUsed, int argc, char **argv, char **azColName){
int i;
for(i=0; i<argc; i++){
printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
}
printf("\n");
return 0;
}
int main(int argc, char **argv){
sqlite3 *db;
char *zErrMsg = 0;
int rc;
Ïà¹ØÎĵµ£º
Õâ¶Îʱ¼äÔÚ×öCMS£¨¿Í»§¹ÜÀíϵͳ£¬²»ÊÇÄÚÈݹÜÀí£©µÄ·ÃÎʹÜÀí¹¦ÄÜ£¬ÒªÇóʵÏÖ¶Ô·þÎñÌṩÉ豸£¬¿Í»§¶Ë£¬¼Æ·Ñ£¬È¨ÏÞÈÏÖ¤µÈÐÅÏ¢µÄ´æ´¢Í³¼Æ£¬Ô¶³Ì¹ÜÀí¡£ÒªÇóϵͳ·¢²¼Òª·½±ã£¬Ô¶³Ì¹ÜÀíÈí¼þÒªÅÜÔÚWINƽ̨¡£¿¼Âǵ½ÏµÍ³¹æÄ££¬¿Í»§ÒªÇó£¬×îºóÑ¡ÔñÁËWIN+ACCESSµÄ·½°¸£¬¶ø×î½üÓÖ·¢ÏÖÒ»¸öÃâ·ÑµÄSQLITE£¬¶øÇÒ¿ÉÄÜÔÚÒÔºóµÄÊÖ³ÖÉ豸ÉÏÓ㬻¨µã ......
1¡¢.back ?DB? FILE ±¸·ÝDB(ĬÈÏΪmain)µ½Îļþ
2¡¢.bail ON|OFF Óöµ½Ò»¸ö´íÎó¿ÛÍ£Ö¹£¬¸ÃֵĬÈÏΪOFF
3¡¢.databases Áоٸ½¼Óµ½Êý¾Ý¿âµÄÊý¾Ý¿âÃûºÍÎļþÃû
4¡¢.dump ?TABLE? ... ÓÃSQLÎı¾¸ñʽÁоÙÊý¾Ý¿â£¬Èç¹ûÖ¸¶¨TABLE£¬½ö½öÁÐ¾ÙÆ¥ÅäµÄ±í£¬LIKEÀàÐÍTABLE
5¡¢.echo ON|OFF ÉèÖÃechoµÄ״̬ ......
Ê×ÏÈ×öµãÆÌµæËµÃ÷£º
sqlite³ÌÐòͨ¹ý²éÕÒ·ÖºÅ(;)À´¾ö¶¨Ò»¸öSQLÓï¾äµÄ½áÊø,ËùÒÔÒªÖ´ÐÐSQLÓï¾äÇëÈ·±£ÔÚSQLÓï¾äºóÓзֺÅ(;).Èç¹ûÄãÊ¡ÂԷֺţ¬sqlite3½«¸øÄãÒ»¸öÁ¬ÐøµÄÃüÁîÌáʾ·û(...> )²¢µÈÄã¸øµ±Ç°µÄSQLÃüÁîÌí¼Ó¸ü¶àµÄÎÄ×Ö¡£Õâ¸öÌØµãÈÃÄãÊäÈë¶àÐеĶà¸öSQLÓï¾ä.µ«µãºÅ(.)ÃüÁî²»Òª·ÖºÅ(;).ctrl+c¿ÉÒÔ½áÊøµ±Ç°ÃüÁî¡£
ÔÚdos´ ......
Ò»°ãÊý¾Ý²ÉÓõĹ̶¨µÄ¾²Ì¬Êý¾ÝÀàÐÍ£¬¶øSQLite²ÉÓõÄÊǶ¯Ì¬Êý¾ÝÀàÐÍ£¬»á¸ù¾Ý´æÈëÖµ×Ô¶¯Åжϡ£SQLite¾ßÓÐÒÔÏÂÎåÖÖÊý¾ÝÀàÐÍ£º
1.NULL£º¿ÕÖµ¡£
2.INTEGER£º´ø·ûºÅµÄÕûÐÍ£¬¾ßÌåÈ¡¾öÓдæÈëÊý×ֵķ¶Î§´óС¡£
3.REAL£º¸¡µãÊý×Ö£¬´æ´¢Îª8-byte IEEE¸¡µãÊý¡£
4.TEXT£º×Ö·û´®Îı¾¡£
5.BLOB£º¶þ½øÖƶÔÏó¡£
ת×Ô£ºhttp://www.cnblo ......
OS X×Ô´Ó10.4ºó°ÑSQLiteÕâÌ×Ï൱³öÃûµÄÊý¾Ý¿âÈí¼þ£¬·Å½øÁË×÷ҵϵͳ¹¤¾ß¼¯Àï¡£OS X°ü×°µÄÊǵÚÈý°æµÄSQLite£¬ÓÖ³ÆSQLite3¡£ÕâÌ×Èí¼þÓм¸¸öÌØÉ«£º
Èí¼þÊôÓÚ¹«¹²²Æ£¨public domain£©£¬SQLite¿É˵ÊÇijÖÖ¡¸ÃÀµÂÈí¼þ¡¹£¨virtueware£©£¬×÷Õß±¾ÈË·ÅÆú×Å×÷Ȩ£¬¶ø¸øÊ¹ÓÃSQLiteµÄÈËÒÔϵġ¸×£¸£¡¹£¨blessing£©£º
May you do good an ......