SQLiteʹÓÃ
OS X×Ô´Ó10.4ºó°ÑSQLiteÕâÌ×Ï൱³öÃûµÄÊý¾Ý¿âÈí¼þ£¬·Å½øÁË×÷ҵϵͳ¹¤¾ß¼¯Àï¡£OS X°ü×°µÄÊǵÚÈý°æµÄSQLite£¬ÓÖ³ÆSQLite3¡£ÕâÌ×Èí¼þÓм¸¸öÌØÉ«£º
Èí¼þÊôÓÚ¹«¹²²Æ£¨public domain£©£¬SQLite¿É˵ÊÇijÖÖ¡¸ÃÀµÂÈí¼þ¡¹£¨virtueware£©£¬×÷Õß±¾ÈË·ÅÆú×Å×÷Ȩ£¬¶ø¸øÊ¹ÓÃSQLiteµÄÈËÒÔϵġ¸×£¸£¡¹£¨blessing£©£º
May you do good and not evil. Ô¸ÄãÐÐÉÆÄªÐжñ
May you find forgiveness for yourself and forgive others. Ô¸ÄãÔÁÂ×Ô¼º¿íË¡ËûÈË
May you share freely, never taking more than you give. Ô¸Äã¿íÐÄÓëÈË·ÖÏí£¬ËùÈ¡²»¶àÓÚÄãËùÊ©Óè
Ö§Ô®´ó¶àÊýµÄSQLÖ¸ÁÏÂÃæ»á¼òµ¥½éÉÜ£©¡£
Ò»¸öµµ°¸¾ÍÊÇÒ»¸öÊý¾Ý¿â¡£²»ÐèÒª°²×°Êý¾Ý¿â·þÎñÆ÷Èí¼þ¡£
ÍêÕûµÄUnicodeÖ§Ô®£¨Òò´ËûÓпçÓïϵµÄÎÊÌ⣩¡£
ËٶȺܿ졣
ĿǰÔÚOS X 10.4ÀSQLiteÊÇÒÔ/usr/bin/sqlite3µÄÐÎʽ°ü×°£¬Ò²¾Í˵ÕâÊÇÒ»¸öÃüÁîÁй¤¾ß£¬±ØÐëÏÈ´ÓÖÕ¶Ë»ú£¨Terminal.app»òÆäËû³ÌÐò£©½øÈëshellÖ®ºó²ÅÄÜʹÓá£ÍøÂçÉÏÓÐһЩϢÐÖúʹÓÃSQLiteµÄÊÓ¾õ»¯¹¤¾ß£¬µ«Ëƺõ¶¼Ã»ÓÐÏñCocoaMySQL£¨ÅäºÏMySQLÊý¾Ý¿âʹÓã©ÄǰãºÃÓ᣻òÐíËæÊ±ÓоªÏ²Ò²Î´¿ÉÖª£¬ÒÔϽö½éÉÜÃüÁîÁеIJÙ×÷·½Ê½¡£
SQLite¹ËÃû˼ÒéÊÇÒÔSQLΪ»ù´¡µÄÊý¾Ý¿âÈí¼þ£¬SQLÊÇÒ»Ì×Ç¿´óµÄÊý¾Ý¿âÓïÑÔ£¬Ö÷Òª¸ÅÄîÊÇÓÉ¡¸Êý¾Ý¿â¡¹¡¢¡¸×ÊÁÏ±í¡¹£¨table£©¡¢¡¸²éѯָÁ£¨queries£©µÈµ¥Ôª×é³ÉµÄ¡¸¹ØÁªÐÔÊý¾Ý¿â¡¹£¨½øÒ»²½µÄ¸ÅÄî¿É²Î¿¼ÍøÂçÉϸ÷ÖÖ¹ØÓÚSQL¼°¹ØÁªÐÔÊý¾Ý¿âµÄÎļþ£©¡£ÒòΪSQLµÄ²éѯ¹¦ÄÜÇ¿´ó£¬Óï·¨Ò»Ö¶øÈëÃÅÈÝÒ×£¬Òò´Ë³ÉΪÏÖ½ñÖ÷Á÷Êý¾Ý¿âµÄ±ê×¼ÓïÑÔ£¨Î¢Èí¡¢OracleµÈ´ó³§µÄÊý¾Ý¿âÈí¼þ¶¼ÌṩSQLÓï·¨µÄ²éѯ¼°²Ù×÷£©¡£
ÒÔÏÂÎÒÃǾͽ¨Á¢Êý¾Ý¿â¡¢½¨Á¢×ÊÁÏ±í¼°Ë÷Òý¡¢ÐÂÔö×ÊÁÏ¡¢²éѯ×ÊÁÏ¡¢¸ü¸Ä×ÊÁÏ¡¢ÒƳý×ÊÁÏ¡¢sqlite3ÃüÁîÁÐÑ¡ÏîµÈ¼¸¸öÏîÄ¿×ö¼òµ¥µÄ½éÉÜ¡£
Ŀ¼
[Òþ²Ø]
1 ½¨Á¢Êý¾Ý¿âµµ°¸
2 ÔÚsqlite3ÌáʾÁÐϲÙ×÷
3 SQLµÄÖ¸Áî¸ñʽ
4 ½¨Á¢×ÊÁϱí
5 ½¨Á¢Ë÷Òý
6 ¼ÓÈëÒ»±Ê×ÊÁÏ
7 ²éѯ×ÊÁÏ
8 ÈçºÎ¸ü¸Ä»òɾ³ý×ÊÁÏ
9 ÆäËûsqliteµÄÌØ±ðÓ÷¨
10 С½á
[±à¼]
½¨Á¢Êý¾Ý¿âµµ°¸
ÓÃsqlite3½¨Á¢Êý¾Ý¿âµÄ·½·¨ºÜ¼òµ¥£¬Ö»ÒªÔÚshellϼüÈ루ÒÔÏÂ$·ûºÅΪshellÌáʾºÅ£¬ÇëÎð¼üÈ룩£º
$ sqlite3 foo.db
Èç¹ûĿ¼ÏÂûÓÐfoo.db£¬sqlite3¾Í»á½¨Á¢Õâ¸öÊý¾Ý¿â¡£sqlite3²¢Ã»ÓÐÇ¿ÖÆÊý¾Ý¿âµµÃûÒªÔõôȡ£¬Òò´ËÈç¹ûÄãϲ»¶£¬Ò²¿ÉÒÔÈ¡¸öÀýÈçfoo.icannameitwhateverilikeµÄµµÃû¡£
[±à¼]
ÔÚsqlite3ÌáʾÁÐϲÙ×÷
½øÈëÁËsqlite3Ö®ºó£¬»á¿´µ½ÒÔÏÂÎÄ×Ö£º
S
Ïà¹ØÎĵµ£º
SqLite.netµÄdllΪSystem.Data.SQLite.dll£¬ÕâÖÖdll·ÖΪ32λ¡¢64λºÍÊÊÓÃÓÚcompactframeworkÈýÖÖ£¬ÔÚÒýÓÃʱҪעÒ⣬ѡÔñÕýÈ·µÄdll¡£
½«Òª±£´æÍ¼Æ¬µÄ×Ö¶ÎÀàÐÍÉèΪblob¡£´úÂëÈçÏ£º
private void savePicture£¨£©
{
using (SQLiteConnection cnn = new SQLiteConnection(dbPath))
......
.dump ?TABLE? ... ÒÔSQLÓï¾ä·½Ê½ÏÔʾ±íµÄ½á¹¹¡£È磺
sqlite> .dump websties
BEGIN TRANSACTION;
COMMIT;
sqlite> .dump websites
BEGIN TRANSACTION;
CREATE TABLE [websites] (
[WebID] INTEGER NOT NULL PRIMARY KEY,
[WebName] VARCHAR(20) NULL
);
INSERT INTO "websites" VALUES(1,'CTOChina.net'); ......
.nullvalue STRING ÓÃSTRING´úÌænullÖµÏÔʾ,²»ÄÑÀí½â£¬¾Í²»ÔÙÀÛÊöÁË¡£
.output FILENAME ÉèÖðѲéѯÊä³öµ½Îļþ,ºóÃæµÄÊä³ö½á¹û¶¼±£´æµ½ÎļþÖÐ,È磺
sqlite> .mode list
sqlite> .output websites.txt
sqlite> select * from websites;
sqlite>
¿ÉÒÔÔÚFÅÌÏ·¢ÏÖ½¨Á¢ÁËwebsites.txtÎļþ£¬ÆäÄÚÈÝÈçÏ£º
......
ÔÚSQLÖÐÓÐÈçÏÂÁ½ÖÖ·½·¨¿ÉÒÔʵÏÖ½«Ò»¸ö±íÖÐÊý¾Ýµ½ÁíÒ»¸ö±íÖÐ
1> select ... into new_tablename from ... where ...
2> insert (into) old_tablename select ... from ... where ...
Çø±ðÊÇǰÕß°ÑÊý¾Ý²åÈëÒ»¸öÐÂ±í£¨ÏȽ¨Á¢±í£¬ÔÙ²åÈëÊý¾Ý£©£¬
ºóÕßÊǰÑÊý¾Ý²åÈëÒѾ´æÔÚµÄÒ»¸ö±íÖУ¬ÎÒ¸öÈËϲ»¶ºóÕߣ¬Òò ......
1¡¢ÈçºÎ½¨Á¢×Ô¶¯Ôö³¤×Ö¶Î?
¼ò¶Ì»Ø´ð£ºÉùÃ÷Ϊ INTEGER PRIMARY KEY µÄÁн«»á×Ô¶¯Ôö³¤¡£
³¤Ò»µãµÄ´ð°¸£º Èç¹ûÄãÉùÃ÷±íµÄÒ»ÁÐΪ INTEGER PRIMARY KEY£¬ÄÇô£¬ ÿµ±ÄãÔÚ¸ÃÁÐÉϲåÈëÒ»NULLֵʱ£¬ NULL×Ô¶¯±»×ª»»ÎªÒ»¸ö±È¸ÃÁÐÖÐ×î´óÖµ´ó1µÄÒ»¸öÕûÊý£¬Èç¹û±íÊǿյģ¬ ½«»áÊÇ1¡ ......