sqlite³£¼ûÎÊÌâ
(1) ÈçºÎ½¨Á¢×Ô¶¯Ôö³¤×Ö¶Î?
¼ò¶Ì»Ø´ð£ºÉùÃ÷Ϊ INTEGER PRIMARY KEY µÄÁн«»á×Ô¶¯Ôö³¤¡£
³¤Ò»µãµÄ´ð°¸£º Èç¹ûÄãÉùÃ÷±íµÄÒ»ÁÐΪ INTEGER PRIMARY KEY£¬ÄÇô£¬ ÿµ±ÄãÔÚ¸ÃÁÐÉϲåÈëÒ»NULLֵʱ£¬ NULL×Ô¶¯±»×ª»»ÎªÒ»¸ö±È¸ÃÁÐÖÐ×î´óÖµ´ó1µÄÒ»¸öÕûÊý£¬Èç¹û±íÊǿյģ¬ ½«»áÊÇ1¡£ (Èç¹ûÊÇ×î´ó¿ÉÄܵÄÖ÷¼ü 9223372036854775807£¬ÄǸö£¬½«¼üÖµ½«ÊÇËæ»úδʹÓõÄÊý¡££© È磬ÓÐÏÂÁÐ±í£º
CREATE TABLE t1(
a INTEGER PRIMARY KEY,
b INTEGER
);
ÔڸñíÉÏ£¬ÏÂÁÐÓï¾ä
INSERT INTO t1 VALUES(NULL,123);
ÔÚÂß¼ÉϵȼÛÓÚ£º
INSERT INTO t1 VALUES((SELECT max(a) from t1)+1,123);
ÓÐÒ»¸öеÄAPI½Ð×ö sqlite3_last_insert_rowid()£¬ Ëü½«·µ»Ø×î½ü²åÈëµÄÕûÊýÖµ¡£
×¢Òâ¸ÃÕûÊý»á±È±íÖиÃÁÐÉϵIJåÈë֮ǰµÄ×î´óÖµ´ó1¡£ ¸Ã¼üÖµÔÚµ±Ç°µÄ±íÖÐÊÇΨһµÄ¡£µ«ÓпÉÄÜÓëÒÑ´Ó±íÖÐɾ³ýµÄÖµÖØµþ¡£ ÒªÏ뽨Á¢ÔÚÕû¸ö±íµÄÉúÃüÖÜÆÚÖÐΨһµÄ¼üÖµ£¬ÐèÒªÔÚ INTEGER PRIMARY KEY ÉÏÔö¼ÓAUTOINCREMENTÉùÃ÷¡£ÄÇô£¬ÐµļüÖµ½«»á±È¸Ã±íÖÐÔøÄÜ´æÔÚ¹ýµÄ×î´óÖµ´ó1¡£ Èç¹û×î´ó¿ÉÄܵÄÕûÊýÖµÔÚÊý¾Ý±íÖÐÔø¾´æÔÚ¹ý£¬INSERT½«»áʧ°Ü£¬ ²¢·µ»ØSQLITE_FULL´íÎó´úÂë¡£
--------------------------------------------------------------------------------------------------------------------------------------------------
(2)SQLite3Ö§³ÖºÎÖÖÊý¾ÝÀàÐÍ£¿
NULL
INTEGER
REAL
TEXT
BLOB
µ«Êµ¼ÊÉÏ£¬sqlite3Ò²½ÓÊÜÈçϵÄÊý¾ÝÀàÐÍ£º
smallint 16 λԪµÄÕûÊý¡£
interger 32 λԪµÄÕûÊý¡£
decimal(p,s) p ¾«È·ÖµºÍ s ´óСµÄÊ®½øÎ»ÕûÊý£¬¾«È·ÖµpÊÇָȫ²¿Óм¸¸öÊý(digits)´óСֵ £¬sÊÇָСÊýµãááÓм¸Î»Êý¡£Èç¹ûûÓÐÌØ±ðÖ¸¶¨£¬Ôòϵͳ»áÉèΪ p=5; s=0 ¡£
float 32λԪµÄʵÊý¡£
double 64λԪµÄʵÊý¡£
char(n) n ³¤¶ÈµÄ×Ö´®£¬n²»Äܳ¬¹ý 254¡£
varchar(n) ³¤¶È²»¹Ì¶¨ÇÒÆä×î´ó³¤¶ÈΪ n µÄ×Ö´®£¬n²»Äܳ¬¹ý 4000¡£
graphic(n) ºÍ char(n) Ò»Ñù£¬²»¹ýÆäµ¥Î»ÊÇÁ½¸ö×ÖÔª double-bytes£¬ n²»Äܳ¬¹ý127¡£ Õâ¸öÐÎ̬ÊÇΪÁËÖ§Ô®Á½¸ö×ÖÔª³¤¶ÈµÄ×ÖÌ壬ÀýÈçÖÐÎÄ×Ö¡£
vargraphic(n) ¿É±ä³¤¶ÈÇÒÆä×î´ó³¤¶ÈΪ n µÄË«×ÖÔª×Ö´®£¬n²»Äܳ¬¹ý 2000¡£
date °üº¬ÁË Äê·Ý¡¢Ô·ݡ¢ÈÕÆÚ¡£
time °üº¬ÁË Ð¡Ê±¡¢·ÖÖÓ¡¢Ãë¡£
timestamp °üº¬ÁË Äê¡¢Ô¡¢ÈÕ¡¢Ê±¡
Ïà¹ØÎĵµ£º
SQLiteÊÇÒ»¿îÇáÐ͵ÄÊý¾Ý¿â£¬ÊÇ×ñÊØACIDµÄ¹ØÁªÊ½Êý¾Ý¿â¹ÜÀíϵͳ£¬ËüµÄÉè¼ÆÄ¿±êÊÇǶÈëʽµÄ£¬¶øÇÒĿǰÒѾÔںܶàǶÈëʽ²úÆ·ÖÐʹÓÃÁËËü£¬ËüÕ¼ÓÃ×ÊÔ´·Ç³£µÄµÍ£¬ÔÚǶÈëʽÉ豸ÖУ¬¿ÉÄÜÖ»ÐèÒª¼¸°ÙKµÄÄÚ´æ¾Í¹»ÁË¡£ËüÄܹ»Ö§³ÖWindows/Linux/UnixµÈµÈÖ÷Á÷µÄ²Ù×÷ϵͳ£¬Í¬Ê±Äܹ»¸úºÜ¶à³ÌÐòÓïÑÔÏà½áºÏ£¬±È ......
zz from https://www.dream4ever.org/showthread.php?t=86440 feuvan @ DRL
ÔÎÄÔÚhttp://sqlitecn.feuvan.net/faq.html
Óï·¨²¿·ÖÕýÔÚ·ÒëÖУ¬¾´ÇëÆÚ´ý
FAQÖÐÎİæ
ÈçºÎ´´½¨×ÔÔö×ֶΣ¿
SQLite Ö§³ÖÄÄЩÊý¾ÝÀàÐÍ£¿
ΪʲôÄÜÏò SQLite Êý¾Ý¿âµÄÕûÐÍ×Ö¶ÎÖвåÈë×Ö·û´®£¿
Ϊʲô SQLite ÈÏΪ±í´ïʽ '0'=='00' ÎªÕæ£¿
......
1¡¢SQLite¼ò½é
¡¡¡¡SQLiteµÚÒ»¸öAlpha°æ±¾µ®ÉúÓÚ2000Äê5ÔÂ. ÖÁ½ñÒѾÓÐ4¸öÄêÍ·ÁË. SQLiteÒ²ÓÀ´ÁËÒ»¸ö°æ±¾ SQLite 3ÒѾ·¢²¼.
¡¡
¡¡SQLiteÊÇÒ»¿îÇáÐ͵ÄÊý¾Ý¿â£¬ÊÇ×ñÊØACIDµÄ¹ØÁªÊ½Êý¾Ý¿â¹ÜÀíϵͳ£¬ËüµÄÉè¼ÆÄ¿±êÊÇǶÈëʽµÄ£¬¶øÇÒĿǰÒѾÔںܶàǶÈëʽ²úÆ·ÖÐʹÓÃÁËËü£¬ËüÕ¼ÓÃ×Ê
Ô´·Ç³£µÄµÍ£¬ÔÚǶÈëʽÉ豸ÖУ¬¿ÉÄÜÖ»ÐèÒª ......
// sqlite½â¾öÖÐÎÄ·¾¶ÎÊÌâ,ÒÔǰÑо¿sqliteʱºòÓöµ½µÄÖÐÎÄ·¾¶ÎÊÌâµÄ½â¾ö·½·¨
// AnsiString cbÖеÄ×Ö·û´®Àà,ÆäËü±àÒëÆ÷ÓÃstd::stringÌæ»»¼´¿É.
// MultiByteToWideCharÊÇwindows api
AnsiString fileName;
int strSize = fileName.Length();
char *ansi = new char[strSize+1];
wchar_t *unico ......
JavaÁ¬½ÓSQLiteÊý¾Ý¿âÏê½â ÏÂÔØSQLiteÊý¾Ý¿âµÄJDBC ÕâÀï¸ø³öÒ»¸öÖÐÎÄÕ¾µãµÄURL: ÉèÖû·¾³±äÁ¿£º ½«ÏÂÔØµ½µÄ°ü½âѹºóµÃµ½jar°ü sqlitejdbc-v033-nested.jar ·Åµ½%JAVA_HOME%\lib Ï£¬²¢ÇÒ½«ÆäÌí¼Óµ½classpathϵͳ»·¾³±äÁ¿ÖÐ,ÎÒµÄclasspathϵͳ»·¾³±äÁ¿ÏÖÔÚΪ: .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\li ......