Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

[ÊÕ£] ÓÃsqlite Ö´Ðбê×¼ sql Óï·¨

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 *sql ÊÇÒ»Ìõ sql Óï¾ä£¬ÒÔ\0½áβ¡£
µÚ3¸ö²ÎÊýsqlite3_callback Êǻص÷£¬µ±ÕâÌõÓï¾äÖ´ÐÐÖ®ºó£¬sqlite3»áÈ¥µ÷ÓÃÄãÌṩµÄÕâ¸öº¯Êý¡£
µÚ4¸ö²ÎÊývoid * ÊÇÄãËùÌṩµÄÖ¸Õësql Óï·¨
£¬Äã¿ÉÒÔ´«µÝÈκÎÒ»¸öÖ¸Õë²ÎÊýµ½ÕâÀÕâ¸ö²ÎÊý×îÖջᴫµ½»Øµ÷º¯ÊýÀïÃ棬Õâ¸öÖ¸Õë±È½ÏÖØÒª£¬¿ÉÒÔÓÃÀ´×÷²ÎÊýµÄ´«µÝ¡£Èç¹û²»ÐèÒª´«µÝÖ¸Õë¸ø»Øµ÷º¯Êý£¬¿ÉÒÔÌîNULL¡£µÈÏÂÎÒÃÇÔÙ¿´»Øµ÷º¯ÊýµÄд·¨£¬ÒÔ¼°Õâ¸ö²ÎÊýµÄʹÓá£
µÚ
5 ¸ö²ÎÊýchar ** errmsg ÊÇ´íÎóÐÅÏ¢¡£×¢ÒâÊÇÖ¸ÕëµÄÖ¸Õë¡£sqlite3ÀïÃæÓкܶà¹Ì¶¨µÄ´íÎóÐÅÏ¢¡£Ö´ÐÐ sqlite3_exec
Ö®ºó£¬Ö´ÐÐʧ°Üʱ¿ÉÒÔ²éÔÄÕâ¸öÖ¸Õ루ֱ½Ó
printf(“%s\n”£¬errmsg)£©µÃµ½Ò»´®×Ö·û´®ÐÅÏ¢£¬Õâ´®ÐÅÏ¢¸æËßÄã´íÔÚʲôµØ·½¡£sqlite3_execº¯Êýͨ¹ýÐÞ¸ÄÄã´«ÈëµÄÖ¸ÕëµÄÖ¸
Õ룬°ÑÄãÌṩµÄÖ¸ÕëÖ¸Ïò´íÎóÌáʾÐÅÏ¢£¬ÕâÑùsqlite3_execº¯ÊýÍâÃæ¾Í¿ÉÒÔͨ¹ýÕâ¸ö char*µÃµ½¾ßÌå´íÎóÌáʾ¡£
˵Ã÷£ºÍ¨³££¬
sqlite3_callback ºÍËüºóÃæµÄ void * ÕâÁ½¸öλÖö¼¿ÉÒÔÌî NULL¡£ÌîNULL±íʾÄã²»ÐèÒª»Øµ÷¡£±ÈÈçÄã×ö insert
²Ù×÷£¬×ö delete ²Ù×÷£¬¾ÍûÓбØҪʹÓûص÷¡£¶øµ±Äã×ö select ʱ£¬¾ÍҪʹÓûص÷£¬ÒòΪ sqlite3
°ÑÊý¾Ý²é³öÀ´£¬µÃͨ¹ý»Øµ÷¸æËßÄã²é³öÁËʲôÊý¾Ý¡£
2.exec µÄ»Øµ÷
typedef int (*sqlite3_callback)(void*£¬int£¬char**£¬ char**);
ÄãµÄ»Øµ÷º¯Êý±ØÐ붨Òå³ÉÉÏÃæÕâ¸öº¯ÊýµÄÀàÐÍ¡£ÏÂÃæ¸ø¸ö¼òµ¥µÄÀý×Ó£º
// sqlite ÿ²éµ½Ò»Ìõ¼Ç¼£¬¾Íµ÷ÓÃÒ»´ÎÕâ¸ö»Øµ÷
int LoadMyInfo( void * para£¬ int n_column£¬ char ** column_value£¬ char ** column_name )
{
          //paraÊÇÄãÔÚ sqlite3_exec Àï´«ÈëµÄ void * ²ÎÊý
          //ͨ¹ýpara²ÎÊý£¬Äã¿ÉÒÔ´«ÈëһЩÌØÊâµÄÖ¸Õ루±ÈÈçÀàÖ¸Õë¡¢½á¹¹Ö¸Õ룩£¬È»ºóÔÚÕâÀïÃæÇ¿ÖÆת»»³É¶ÔÓ¦µÄÀàÐÍ£¨ÕâÀïÃæÊÇvoid*ÀàÐÍ£¬±ØÐëÇ¿ÖÆת»»³ÉÄãµÄÀàÐͲſÉÓã©¡£È»ºó²Ù×÷ÕâЩÊý¾Ý
          //n_columnÊÇÕâÒ»Ìõ¼Ç¼ÓжàÉÙ¸ö×ֶΠ(¼´ÕâÌ


Ïà¹ØÎĵµ£º

sqliteÓ¦Óó¡¾°

¡ïÈçºÎȨºâ£¿
¡¡¡¡µ±ÄãÔÚȨºâij¸ö³¡ºÏÊÇ·ñÓ¦¸ÃʹÓÃSQLiteʱ£¬£¨ÔÚ¼¼Êõ²ãÃ棩ÖÁÉÙÒª¿¼ÂÇÈçϼ¸µã£º
¡¡¡¡¡óÄÜ·ñ·¢»ÓSQLiteµÄijЩÌس¤£¿
¡¡¡¡¡óÊÇ·ñ»¹ÓÐÆäËüµÄÌæ´ú·½°¸£¿
¡¡¡¡¡óÊÇ·ñÓÐɶDZÔڵļ¼Êõ·çÏÕ£¿
¡¡¡¡ÏëÇå³þÉÏÊöÎÊÌâÖ®ºó£¬ÔÙ×ö³ö¾ö²ß¡£
¡¡¡¡¡ïSQLiteµÄÌصã
¡¡¡¡¹ØÓÚSQLiteµÄÌس¤£¬ÔÚÉϴεÄÌû×ÓÖÐÒѾ­½éÉܹýÁË¡£ ......

SQLiteÈçºÎɾ³ý¡¢Ð޸ġ¢ÖØÃüÃûÁУ¿

Ê×ÏÈÉùÃ÷£ºÈç¹ûÄãÏëÖ±½Óalter£¬·ÅÆú°É¡£ÒÔÏÂÄÚÈÝ¿ÉÒÔºöÂÔÁË¡£
sqlite¹Ù·½ËµÃ÷ÈçÏ£º
SQLite supports a limited subset of ALTER TABLE. The ALTER TABLE command in SQLite allows the user to rename a table or to add a new column to an existing table. It is not possible to rename a column, remove a column, o ......

sqliteÐÔÄÜÓÅ»¯

Ö÷Ҫͨ¹ýpragmaÖ¸ÁîÀ´ÊµÏÖ¡£
±ÈÈ磺 ¿Õ¼äÊÍ·Å¡¢´ÅÅÌͬ²½¡¢Cache´óСµÈ¡£
²»Òª´ò¿ª¡£Ç°ÎÄÌá¸ßÁË£¬VacuumµÄЧÂʷdz£µÍ£¡
PRAGMA auto_vacuum;
PRAGMA auto_vacuum = 0 | 1;
²éѯ»òÉèÖÃÊý¾Ý¿âµÄauto-vacuum±ê¼Ç¡£
Õý³£Çé¿öÏ£¬µ±Ìá½»Ò»¸ö´ÓÊý¾Ý¿âÖÐɾ³ýÊý¾ÝµÄÊÂÎñʱ£¬Êý¾Ý¿âÎļþ²»¸Ä±ä´óС¡£Î´Ê¹ÓõÄÎļþÒ³±»±ê¼Ç²¢ÔÚÒÔ ......

sqliteÈ«ÎIJéѯÅäÖõ½Ê¹ÓÃÈ«¹ý³Ì

      SQLiteÊÇÒ»¿îÇáÐ͵ÄÊý¾Ý¿â£¬ÊÇ×ñÊØACIDµÄ¹ØÁªÊ½Êý¾Ý¿â¹ÜÀíϵͳ£¬ËüµÄÉè¼ÆÄ¿±êÊÇǶÈëʽµÄ£¬¶øÇÒÄ¿Ç°ÒѾ­ÔںܶàǶÈëʽ²úÆ·ÖÐʹÓÃÁËËü£¬ËüÕ¼ÓÃ×ÊÔ´·Ç³£µÄµÍ£¬ÔÚǶÈëʽÉ豸ÖУ¬¿ÉÄÜÖ»ÐèÒª¼¸°ÙKµÄÄÚ´æ¾Í¹»ÁË¡£ËüÄܹ»Ö§³ÖWindows/Linux/UnixµÈµÈÖ÷Á÷µÄ²Ù×÷ϵͳ£¬Í¬Ê±Äܹ»¸úºÜ¶à³ÌÐòÓïÑÔÏà½áºÏ£¬±È ......

sqliteµÄѧϰ±Ê¼ÇתÔØ

Ç°Ðò£º
Sqlite3 µÄÈ·ºÜºÃÓá£Ð¡ÇÉ¡¢Ëٶȿ졣µ«ÊÇÒòΪ·Ç΢ÈíµÄ²úÆ·£¬°ïÖúÎĵµ×ܾõµÃ²»¹»¡£ÕâЩÌìÔÙ´ÎÑо¿Ëü£¬ÓÖÓÐһЩÊÕ»ñ£¬ÕâÀï°ÑÎÒ¶Ô sqlite3 µÄÑо¿ÁгöÀ´£¬ÒÔ±¸Íü¼Ç¡£
ÕâÀïҪעÃ÷£¬ÎÒÊÇÒ»¸ö¿çƽ̨רעÕߣ¬²¢²»Ï²»¶Ö»Óà windows ƽ̨¡£ÎÒÒÔÇ°µÄ¹¤×÷¾ÍÊÇΪ unix ƽ̨д´úÂë¡£ÏÂÃæÎÒËùдµÄ¶«Î÷£¬ËäȻûÓÐÑéÖ¤£¬µ«ÊÇÎÒÒѾ¡ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ