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

sqlite´úÂëµÄ±àд

 ÏÂÔØ´úÂë
È¡µÃÒ»·Ý¶þ½øÖÆ¿½±´, »òÕßÊÇÔ´´úÂë²¢×Ô¼º±àÒëËü. ¹ØÓÚ ÏÂÔØÒ³£¨download£© µÄ¸ü¶àÐÅÏ¢.
´´½¨Ò»¸öÐÂÊý¾Ý¿â
ÔÚ DOS ÃüÁîÐÐÏÂ, ÊäÈë: "sqlite3 test.db". ½«´´½¨Ò»¸öеÄÊý¾Ý¿âÎļþÃû½Ð"test.db". (Äã¿ÉÒÔʹÓò»Í¬µÄÃû×Ö)
ÊäÈë SQL ÃüÁîÔÚÌáʾ·ûÏ´´½¨ºÍдÈëеÄÊý¾Ý.
д³ÌÐòʹÓà SQLite
ÏÂÃæÊÇÒ»¸ö¼òµ¥µÄ TCL ³ÌÐòÈÃÎÒÃÇ¿´¿´ÔõôʹÓà sqlite µÄ TCL ½Ó¿Ú. ´Ë³ÌÐòÖ´ÐÐ SQL ÉùÃ÷µÄµÚ¶þ¸ö²ÎÊý Ö´ÐÐSQLÃüÁî. Õâ¸öÃüÁîÊÇ sqlite3 ÔÚµÚ 7 Ðдò¿ªÒ»¸ö SQLite Êý¾Ý¿â²¢ÇÒ´´½¨Ò»¸öÐ嵀 TCL ÃüÁÃû×ÖÊÇ"db" Á¬½Óµ½Êý¾Ý¿â,Õâ¸ö db ÃüÁîÔÚµÚ 8 ÐÐÖ´ÐÐ SQL ÃüÁî¶ÔÊý¾Ý¿â,²¢ÇҹرÕÓëÊý¾Ý¿âµÄÁ¬½Ó.
´úÂë:
#!/usr/bin/tclsh
if {$argc!=2} {
puts stderr "Usage: %s DATABASE SQL-STATEMENT"
exit 1
}
load /usr/lib/tclsqlite3.so Sqlite3
sqlite3 db [lindex $argv 0]
db eval [lindex $argv 1] x {
foreach v $x(*) {
puts "$v = $x($v)"
}
puts ""
}
db close
ÏÂÃæÊÇÒ»¸öC³ÌÐòµÄÀý×Ó£¬ÏÔʾÔõôʹÓà sqlite µÄ C/C++ ½Ó¿Ú. Êý¾Ý¿âµÄÃû×ÖÓɵÚÒ»¸ö²ÎÊýÈ¡µÃÇÒµÚ¶þ¸ö²ÎÊý»ò¸ü¶àµÄ²ÎÊýÊÇ SQL Ö´ÐÐÓï¾ä. Õâ¸öº¯Êýµ÷ÓÃsqlite3_open() ÔÚ 22 Ðдò¿ªÊý¾Ý¿â, sqlite3_exec() ÔÚ 27 ÐÐÖ´ÐÐ SQL ÃüÁî, ²¢ÇÒsqlite3_close() ÔÚ 31 ÐйرÕÊý¾Ý¿âÁ¬½Ó.
´úÂë:
#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;
if( argc!=3 ){
fprintf(stderr, "Usage: %s DATABASE SQL-STATEMENT\n", argv[0]);
exit(1);
}
rc = sqlite3_open(argv[1], &db);
if( rc ){
fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
sqlite3_close(db);
exit(1);
}
rc = sqlite3_exec(db, argv[2], callback, 0, &zErrMsg);
if( rc!=SQLITE_OK ){
fprintf(stderr, "SQL error: %s\n", zErrMsg);
}
sqlite3_close(db);
return 0;
}


Ïà¹ØÎĵµ£º

Sqlite³£Óú¯Êý£º

ÎÄÕÂÀ´Ô´ÓÚhttp://blog.csdn.net/ast_224/archive/2009/01/08/3734099.aspx
                                       ......

SQLITEʹÓÃ×ܽá

1. ´ò¿ªÄÚ´æÊý¾Ý¿â
   Ö±½Ó´ò¿ªÒ»¸öÃûΪ":memory:"»òÕß Ãû×ÖÖ±½ÓΪ¿ÕµÄÊý¾Ý¿â£¬ Á½ÖÖÊý¾Ý¿âÂÔ΢ÓÐÐ©Çø±ð¡£
   ²Î¿¼ £ºhttp://www.sqlite.org/inmemorydb.html
2. ±£´æÄÚ´æÊý¾Ý¿â
3. ÅжϱíÊÇ·ñ´æÔÚ
    Í¨¹ý²éѯϵͳ±ísqlite_masterÀ´»ñÈ¡Ïà¹ØÐÅÏ¢
    select * f ......

SQLiteµÄ¾ÖÏÞÐÔ

SQL-92ÌØÐÔ·½Ãæ
ÕýÈçÇ°ÃæÌáµ½µÄ£¬SQLite²»Ö§³ÖSQL-92µÄÔںܶàÆóÒµÊý¾Ý¿âϵͳÖпÉÓõÄÒ»Ð©ÌØÐÔ¡£
È磺
Íâ¼üÔ¼Êø£¨¿É½âÎöµÄ£¬µ«·ÇÇ¿ÖÆ£©
ºÜ¶àALTER TABLEÌØÐÔ
һЩTRIGGERÏà¹ØµÄÌØÐÔ
RIGHTºÍFULL OUTER JOIN
¸üÐÂÒ»¸öVIEW
GRANTºÍREVOKE
Äã¿ÉÒÔÔÚSQLiteµÄÖ÷Ò³ÉÏ»ñÈ¡×îÐÂÐÅÏ¢¡£
http://www.sqlite.org/omitted.html ......

sqliteʹÓÃ×ܽá3

£¨4£©              ÊÂÎñ´¦Àí
sqlite ÊÇÖ§³ÖÊÂÎñ´¦ÀíµÄ¡£Èç¹ûÄãÖªµÀÄãҪͬ²½É¾³ýºÜ¶àÊý¾Ý£¬²»·Â°ÑËüÃÇ×ö³ÉÒ»¸öͳһµÄÊÂÎñ¡£
ͨ³£Ò»´Î sqlite3_exec ¾ÍÊÇÒ»´ÎÊÂÎñ£¬Èç¹ûÄãҪɾ³ý1ÍòÌõÊý¾Ý£¬sqlite¾Í×öÁË1Íò´Î£º¿ªÊ¼ÐÂÊÂÎñ->ɾ³ýÒ»ÌõÊý¾Ý->Ìá½»ÊÂÎ ......

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 ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ