SQLite3基本說明
SQLite3提供的是一些C函數(shù)接口,你可以用這些函數(shù)操作數(shù)據(jù)庫。通過使用這些接口,傳遞一些標準sql語句(以char *類型)給sqlite函數(shù),SQLite3就會為你操作數(shù)據(jù)庫。
SQLite3跟MS的access一樣是文件型數(shù)據(jù)庫,就是說,一個數(shù)據(jù)庫就是一個文件,此數(shù)據(jù)庫里可以建立很多的表,可以建立索引、觸發(fā)器等等,但是,它實際上得到的就是一個文件。備份這個文件就備份了整個數(shù)據(jù)庫。
SQLite3不需要任何數(shù)據(jù)庫引擎,這意著如果你需要sqlite來保存一些用戶數(shù)據(jù),甚至都不需要安裝數(shù)據(jù)庫。
SQLite3命令(常用Sql語句)操作
創(chuàng)建表: createtable表名(元素名類型,…);
刪除表: droptable表名;
插入數(shù)據(jù): insertinto表名values(,,,);
創(chuàng)建索引: create[unique]index索引名on表名(col….);
刪除索引: dropindex索引名(索引是不可更改的,想更改必須刪除重新建)
刪除數(shù)據(jù): deletefrom表名;
更新數(shù)據(jù): update表名set字段=’修改后的內(nèi)容’where條件;
增加一個列: Altertable表名addcolumn字段數(shù)據(jù)類型;
選擇查詢: select字段(以”,”隔開)from表名where條件;
日期和時間:Selectdatetime('now')
日期: selectdate('now');
時間:selecttime('now');
總數(shù):selectcount(*)fromtable1;
求和:selectsum(field1)fromtable1;
平均:selectavg(field1)fromtable1;
最大:selectmax(field1)fromtable1;
最?。簊electmin(field1)fromtable1;
排序:select字段fromtable1orderby字段(desc或asc);(降序或升序)
分組:select字段fromtable1groupby字段,字段…;
限制輸出:select字段fromtable1limitxoffsety;
SQLite3支持的數(shù)據(jù)類型
NULL 值為NULL
INTEGER值為帶符號的整型,根據(jù)類別用1,2,3,4,6,8字節(jié)存儲
REAL 值為浮點型,8字節(jié)存儲
TEXT 值為text字符串,使用數(shù)據(jù)庫編碼(UTF-8,UTF-16BEorUTF-16-LE)存儲
BLOB 值為二進制數(shù)據(jù),具體看實際輸入
但實際上,sqlite3也接受如下的數(shù)據(jù)類型:
smallint 16位元的整數(shù)
interger 32位元的整數(shù)
decimal(p,s)p精確值和s大小的十進位整數(shù),精確值p是指全部有幾個數(shù)(digits)大小值,s是指小數(shù)點後有幾位數(shù)。如果沒有特別指定,則系統(tǒng)會設為p=5;s=0。
float 32位元的實數(shù)。
double 64位元的實數(shù)。
char(n) n長度的字串,n不能超過254。
varchar(n) 長度不固定且其最大長度為n的字串,n不能超過4000。
graphic(n) 和char(n)一樣,不過其單位是兩個字元double-bytes,n不能超過127。這個形態(tài)是為了支援兩個字元長度的字體,例如中文字。
vargraphic(n)可變長度且其最大長度為n的雙字元字串,n不能超過2000。
date 包含了年份、月份、日期。
time 包含了小時、分鐘、秒。
timestamp 包含了年、月、日、時、分、秒、千分之一秒。
如果將聲明表的一列設置為INTEGERPRIMARYKEY,則具有:
1.每當你在該列上插入一NULL值時,NULL自動被轉(zhuǎn)換為一個比該列中最大值大1的一個整數(shù);
2.如果表是空的,將會是1;
算術函數(shù)
abs(X)返回給定數(shù)字表達式的絕對值。
max(X,Y[,...])返回表達式的最大值。
min(X,Y[,...])返回表達式的最小值。
random(*)返回隨機數(shù)。
round(X[,Y])返回數(shù)字表達式并四舍五入為指定的長度或精度。
字符處理函數(shù)
length(X)返回給定字符串表達式的字符個數(shù)。
lower(X)將大寫字符數(shù)據(jù)轉(zhuǎn)換為小寫字符數(shù)據(jù)后返回字符表達式。
upper(X)返回將小寫字符數(shù)據(jù)轉(zhuǎn)換為大寫的字符表達式。
substr(X,Y,Z)返回表達式的一部分。
randstr()
quote(A)
like(A,B)
確定給定的字符串是否與指定的模式匹配。
glob(A,B)
條件判斷函數(shù)
coalesce(X,Y[,...])
ifnull(X,Y)
nullif(X,Y)
集合函數(shù)
avg(X)返回組中值的平均值。
count(X)返回組中項目的數(shù)量。
max(X)返回組中值的最大值。
min(X)返回組中值的最小值。
sum(X)返回表達式中所有值的和。
其他函數(shù)
typeof(X)返回數(shù)據(jù)的類型。
last_insert_rowid()返回最后插入的數(shù)據(jù)的ID。
sqlite_version(*)返回SQLite的版本。
change_count()返回受上一語句影響的行數(shù)。
last_statement_change_count()
SQLite3更新日志:
1.修復BUG,新版體驗更佳
2.更改了部分頁面
華軍小編推薦:
SQLite3,良心出品,保證性能,小編親測,相信小編的童鞋可以試驗一下!我華軍軟件園還有更多好用的軟件萬彩辦公大師OfficeBox、福昕PDF套件高級編輯器、Lizard Safeguard Secure PDF Viewer、XML Explorer(XML Editor)、Sante CT Viewer!
您的評論需要經(jīng)過審核才能顯示
有用
有用
有用