SQLite ÖÐÎÄ FAQ
zz from https://www.dream4ever.org/showthread.php?t=86440 feuvan @ DRL
ÔÎÄÔÚhttp://sqlitecn.feuvan.net/faq.html
Óï·¨²¿·ÖÕýÔÚ·ÒëÖУ¬¾´ÇëÆÚ´ý
FAQÖÐÎİæ
ÈçºÎ´´½¨×ÔÔö×ֶΣ¿
SQLite Ö§³ÖÄÄЩÊý¾ÝÀàÐÍ£¿
ΪʲôÄÜÏò SQLite Êý¾Ý¿âµÄÕûÐÍ×Ö¶ÎÖвåÈë×Ö·û´®£¿
Ϊʲô SQLite ÈÏΪ±í´ïʽ '0'=='00' ÎªÕæ£¿
Ϊʲô SQLite ²»ÔÊÐíÔÚͬһÕűíÀïʹÓà '0' ºÍ '0.0' ×÷ΪÁ½¸ö²»Í¬µÄÐеÄÖ÷¼ü£¿
Ϊʲô²»ÄÜÔÚ Linux box ÖжÁÈ¡ÔÚ SparcStation Öд´½¨µÄ SQLite Êý¾Ý¿â£¿
¶à¸öÓ¦ÓóÌÐò»òÕßͬһ¸öÓ¦ÓóÌÐòµÄ¶à¸öÀý³ÌÄÜͬʱ´æÈ¡Í¬Ò»¸öÊý¾Ý¿âÎļþÂð£¿
SQLiteÊÇḬ̈߳²È«µÄÂð?
ÈçºÎÁгöÒ»¸ö SQLite Êý¾Ý¿âÖеÄËùÓеıí/Ë÷Òý£¿
SQLiteÊý¾Ý¿âÊÇ·ñÓÐÒÑÖªµÄ´óСÏÞÖÆ£¿
ÔÚ SQLite ÖÐ VARCHAR µÄ×î´ó³¤¶ÈÊǶàÉÙ£¿
SQLite ÊÇ·ñÖ§³Ö BLOB ÀàÐÍ£¿
ÈçºÎ´ÓÒ»¸öÒÑ´æÔÚµÄ SQLite Êý¾Ý±íÖÐÌí¼Ó/ɾ³ý×ֶΣ¿
ÎÒɾ³ýÁ˺ܶàÊý¾Ýµ«ÊÇÊý¾Ý¿âÎļþ²¢Ã»ÓмõС£¬ÊDz»ÊÇ Bug£¿
ÊÇ·ñÄܽ« SQLite ÓÃÓÚÉÌÒµÓÃ;¶ø²»Óý»°æÈ¨·ÑÓã¿
ÎÒÈçºÎʹÓú¬Óе¥ÒýºÅ(')µÄ×Ö·û´®£¿
SQLITE_SCHEMA ´íÎó´ú±íʲô£¿
ΪʲôROUND(9.95,1) ·µ»Ø 9.9 ¶ø²»ÊÇ 10.0? ÄѵÀ9.95 ²»¸ÃÏòÉϽøÎ»Ã´£¿
--------------------------------------------------------------------------------
(1) ÈçºÎ´´½¨×ÔÔö×ֶΣ¿
¼òµ¥µÄ»Ø´ð£ºÒ»¸öÉùÃ÷Ϊ INTEGER PRIMARY KEY µÄ×ֶν«×Ô¶¯Ôö¼Ó¡£
ÕâÀïÊÇÏêϸµÄ´ð°¸£º ´Ó SQLite µÄ 2.3.4 °æ±¾¿ªÊ¼£¬Èç¹ûÄ㽫һ¸ö±íÖеÄÒ»¸ö×Ö¶ÎÉùÃ÷Ϊ INTEGER PRIMARY KEY£¬ÄÇôÎÞÂÛÄãºÎʱÏò¸Ã±íµÄ¸Ã×ֶβåÈëÒ»¸ö NULL Öµ£¬Õâ¸ö NULL Öµ½«×Ô¶¯±»¸ü»»Îª±È±íÖиÃ×Ö¶ÎËùÓÐÐеÄ×î´óÖµ´ó 1 µÄÕûÊý£»Èç¹û±íΪ¿Õ£¬ÄÇô½«±»¸ü»»Îª 1¡£±ÈÈ磬¼ÙÉèÄãÓÐÕâÑùµÄÒ»ÕÅÊý¾Ý±í:
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() ·µ»Ø×î½üµÄ²åÈë²Ù×÷µÄÕûÐμü
×¢ÒâÕâ¸öÕûÐͼüʼÖÕ±È֮ǰ²åÈë±íÖеÄ×îºóÒ»¸ö¼ü´ó1¡£Ð¼üÏà¶ÔÓÚ±íÖеÄÒÑÓмüÀ´ËµÊÇΨһµÄ£¬ µ«Ëü¿ÉÄÜÓë֮ǰ´Ó±íÖÐɾ³ýµÄ¼üÖµÖØµþ¡£ÒªÊ¼Öյõ½ÔÚÕû¸ö±íÖÐΨһµÄ¼ü£¬ÔÚINTEGER PRIMARY KEYµÄÉùÃ÷֮ǰ¼Ó¹Ø¼ü´ÊAUTOINCREMENT.ÕâÑù±»Ñ¡µÄ¼ü½«×ÜÊDZȱíÖÐÒÑ´æÔÚµÄ×î´ó¼ü´ó1¡£Èô¿ÉÄÜµÄ ×î´ó¼üÒÑ´æÔÚÓÚ±íÖУ¬INSERT²Ù×÷½«Ê§°Ü²
Ïà¹ØÎĵµ£º
[±à¼±¾¶Î
]
SQLite¼ò½é
SQLite
µÚÒ»¸öAlpha°æ±¾µ®ÉúÓÚ2000Äê5ÔÂ. ÖÁ½ñÒѾÓÐ10¸öÄêÍ·ÁË. SQLiteÒ²ÓÀ´ÁËÒ»¸ö°æ±¾ SQLite 3ÒѾ·¢²¼.
¡¡¡¡SQLiteÊÇÒ»¿îÇáÐ͵ÄÊý¾Ý¿â£¬ÊÇ×ñÊØACIDµÄ¹ØÁªÊ½Êý¾Ý¿â¹ÜÀíϵͳ£¬ËüµÄÉè¼ÆÄ¿±êÊÇǶÈë
ʽµÄ£¬¶øÇÒĿǰÒѾÔںܶàǶÈëʽ²úÆ·ÖÐʹÓÃÁËËü£¬ËüÕ¼ÓÃ×ÊÔ´·Ç³£µÄµÍ£¬ÔÚǶÈëʽÉ豸ÖУ¬¿ ......
package com.jiao.sqlite;
import android.app.Activity;
import android.database.Cursor;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widg ......
********´´½¨***********
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
public class DataBaseOpenHelper extends SQLiteOpenHelper {
public static fi ......
sqliteÊÇ
Ò»¸ö·Ç³£Ð¡ÇÉµÄ¿çÆ½Ì¨Ç¶ÈëʽÊý¾Ý¿â£¬Ëü±¾Éí²»Ìṩ¼ÓÃܹ¦ÄÜ£¬²»¹ýÉè¼ÆÕßÃ÷ÏÔÒ²¿¼ÂÇÁ˼ÓÃܵķ½°¸£¬ÎÒÃÇÔÚÔ´ÂëÖпÉÒÔÕÒµ½Á½¸öÔ¤ÁôµÄ¼ÓÃܽÓ
¿Ú£ºsqlite3_keyºÍsqlite3_rekey£¬¿ÉÒÔͨ¹ýʵÏÖÕâÁ½¸ö½Ó¿ÚÀ´´ïµ½¼ÓÃܵÄÄ¿µÄ¡£
ÈçºÎ¼ÓÃÜ£¬ÒѾÓкܶàÎÄÕÂÃèÊö£¬¿ÉÒԲο¼:¡¶
......