
Sqlite3(小型關(guān)系型數(shù)據(jù)庫(kù))官方版
詳情介紹
開(kāi)發(fā)軟件的用戶對(duì)于數(shù)據(jù)庫(kù)都不會(huì)陌生,這款sqlite3官方版就是一款小巧切好用的關(guān)系型數(shù)據(jù)庫(kù),也是一款能夠代替MySql的數(shù)據(jù)庫(kù),目前已經(jīng)綁定到了PHP5.0上,就像我們的ASP和access結(jié)合一樣。如果你是一位網(wǎng)頁(yè)P(yáng)HP開(kāi)發(fā)人員,那么這個(gè)sqlite3就是你必須掌握使用的東西,并且這款軟件的設(shè)計(jì)目標(biāo)是嵌入式的設(shè)計(jì),所以目前已經(jīng)有很多嵌入式產(chǎn)品在使用這個(gè)數(shù)據(jù)庫(kù),而且由于軟件的資源占用非常低,所以諸多嵌入設(shè)備都開(kāi)始使用這個(gè)數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)數(shù)據(jù),讓我們的嵌入式設(shè)備有更多的資源運(yùn)行。
sqlite3是目前世界最棒的小型數(shù)據(jù)庫(kù),大名鼎鼎的瀏覽器Firefox就是使用這個(gè)數(shù)據(jù)庫(kù),所以大家可不要小看這個(gè)數(shù)據(jù)庫(kù)的潛力,而且還能夠和眾多的程序語(yǔ)言相結(jié)合,比如Tcl、PHP、JAVA等等。
sqlite3官方版操作入門(mén)
sqlite提供的是一些C函數(shù)接口,你可以用這些函數(shù)操作數(shù)據(jù)庫(kù)。通過(guò)使用這些接口,傳遞一些標(biāo)準(zhǔn) sql 語(yǔ)句(以 char * 類型)給 sqlite 函數(shù),sqlite 就會(huì)為你操作數(shù)據(jù)庫(kù)。
sqlite 跟MS的access一樣是文件型數(shù)據(jù)庫(kù),就是說(shuō),一個(gè)數(shù)據(jù)庫(kù)就是一個(gè)文件,此數(shù)據(jù)庫(kù)里可以建立很多的表,可以建立索引、觸發(fā)器等等,但是,它實(shí)際上得到的就是一個(gè)文件。備份這個(gè)文件就備份了整個(gè)數(shù)據(jù)庫(kù)。
sqlite 不需要任何數(shù)據(jù)庫(kù)引擎,這意味著如果你需要 sqlite 來(lái)保存一些用戶數(shù)據(jù),甚至都不需要安裝數(shù)據(jù)庫(kù)(如果你做個(gè)小軟件還要求人家必須裝了sqlserver 才能運(yùn)行,那也太黑心了)。
常用SQL語(yǔ)句
創(chuàng)建表: create table 表名(元素名 類型,…);
刪除表: drop table 表名;
插入數(shù)據(jù): insert into 表名 values(, , ,) ;
創(chuàng)建索引: create [unique] index 索引名on 表名(col….);
刪除索引: drop index 索引名(索引是不可更改的,想更改必須刪除重新建)
刪除數(shù)據(jù): delete from 表名;
更新數(shù)據(jù): update 表名 set 字段=’修改后的內(nèi)容’ where 條件;
增加一個(gè)列: Alter table 表名 add column 字段 數(shù)據(jù)類型;
選擇查詢: select 字段(以”,”隔開(kāi)) from 表名 where 條件;
日期和時(shí)間: Select datetime('now')
日期: select date('now');
時(shí)間: select time('now');
總數(shù):select count(*) from table1;
求和:select sum(field1) from table1;
平均:select avg(field1) from table1;
最大:select max(field1) from table1;
最?。簊elect min(field1) from table1;
排序:select 字段 from table1 order by 字段(desc或asc) ;(降序或升序)
分組:select 字段 from table1 group by 字段,字段… ;
限制輸出:select 字段 from table1 limit x offset y;
= select 字段 from table1 limit y , x;
(備注:跳過(guò)y行,取x行數(shù)據(jù))
(操作仍待完善)…
支持的數(shù)據(jù)類型介紹
NULL 值為NULL
INTEGER 值為帶符號(hào)的整型,根據(jù)類別用1,2,3,4,6,8字節(jié)存儲(chǔ)
REAL 值為浮點(diǎn)型,8字節(jié)存儲(chǔ)
TEXT 值為text字符串,使用數(shù)據(jù)庫(kù)編碼(UTF-8, UTF-16BE or UTF-16-LE)存儲(chǔ)
BLOB 值為二進(jìn)制數(shù)據(jù),具體看實(shí)際輸入
但實(shí)際上,sqlite3也接受如下的數(shù)據(jù)類型:
smallint 16 位元的整數(shù)
interger 32 位元的整數(shù)
decimal(p,s) p 精確值和 s 大小的十進(jìn)位整數(shù),精確值p是指全部有幾個(gè)數(shù)(digits)大小值 ,s是指小數(shù)點(diǎn)後有幾位數(shù)。如果沒(méi)有特別指定,則系統(tǒng)會(huì)設(shè)為 p=5; s=0 。
float 32位元的實(shí)數(shù)。
double 64位元的實(shí)數(shù)。
char(n) n 長(zhǎng)度的字串,n不能超過(guò) 254。
varchar(n) 長(zhǎng)度不固定且其最大長(zhǎng)度為 n 的字串,n不能超過(guò) 4000。
graphic(n) 和 char(n) 一樣,不過(guò)其單位是兩個(gè)字元 double-bytes, n不能超過(guò)127。這個(gè)形態(tài)是為了支援兩個(gè)字元長(zhǎng)度的字體,例如中文字。
vargraphic(n) 可變長(zhǎng)度且其最大長(zhǎng)度為 n 的雙字元字串,n不能超過(guò) 2000。
date 包含了 年份、月份、日期。
time 包含了 小時(shí)、分鐘、秒。
timestamp 包含了 年、月、日、時(shí)、分、秒、千分之一秒。
如果將聲明表的一列設(shè)置為 INTEGER PRIMARY KEY,則具有:
1.每當(dāng)你在該列上插入一NULL值時(shí), NULL自動(dòng)被轉(zhuǎn)換為一個(gè)比該列中最大值大1的一個(gè)整數(shù);
2.如果表是空的, 將會(huì)是1;
算術(shù)函數(shù)
abs(X)返回給定數(shù)字表達(dá)式的絕對(duì)值。
max(X,Y[,...])返回表達(dá)式的最大值。
min(X,Y[,...])返回表達(dá)式的最小值。
random(*)返回隨機(jī)數(shù)。
round(X[,Y])返回?cái)?shù)字表達(dá)式并四舍五入為指定的長(zhǎng)度或精度。
字符處理函數(shù)
length(X)返回給定字符串表達(dá)式的字符個(gè)數(shù)。
lower(X)將大寫(xiě)字符數(shù)據(jù)轉(zhuǎn)換為小寫(xiě)字符數(shù)據(jù)后返回字符表達(dá)式。
upper(X)返回將小寫(xiě)字符數(shù)據(jù)轉(zhuǎn)換為大寫(xiě)的字符表達(dá)式。
substr(X,Y,Z)返回表達(dá)式的一部分。
randstr()
quote(A)
like(A,B)
確定給定的字符串是否與指定的模式匹配。
glob(A,B)
條件判斷函數(shù)
coalesce(X,Y[,...])
ifnull(X,Y)
nullif(X,Y)
集合函數(shù)
avg(X)返回組中值的平均值。
count(X)返回組中項(xiàng)目的數(shù)量。
max(X)返回組中值的最大值。
min(X)返回組中值的最小值。
sum(X)返回表達(dá)式中所有值的和。
其他函數(shù)
typeof(X)返回?cái)?shù)據(jù)的類型。
last_insert_rowid()返回最后插入的數(shù)據(jù)的 ID 。
sqlite_version(*)返回 SQLite 的版本。
change_count()返回受上一語(yǔ)句影響的行數(shù)。
last_statement_change_count()
二.有關(guān)事務(wù)的操作
(成批操作的時(shí)候,啟動(dòng)事務(wù),比不啟動(dòng)事務(wù)快n倍)
開(kāi)始事物處理
BEGIN TRANSACTION;
…………..
進(jìn)行對(duì)數(shù)據(jù)庫(kù)操作
…………..
事物提交
COMMIT;
具體事例如下:
假設(shè)有一個(gè) t1 表,其中有 "a", "b", "c" 三列, 如果要?jiǎng)h除列 c ,以下過(guò)程描述如何做:
BEGIN TRANSACTION;
CREATE TEMPORARY TABLE t1_backup(a,b);
INSERT INTO t1_backup SELECT a,b FROM t1;
DROP TABLE t1;
CREATE TABLE t1(a,b);
INSERT INTO t1 SELECT a,b FROM t1_backup;
DROP TABLE t1_backup;
COMMIT;
更新日志
v3.50.4版本
1、修復(fù)在模糊情況下使用未初始化變量的兩個(gè)長(zhǎng)期案例。
下載地址
- 電腦版
- 本地下載通道:
- 江蘇電信下載
- 廣東電信下載
- 北京聯(lián)通下載
- 浙江電信下載
同類軟件

Navicat Premium 12 v12.1.25
Batch Access Database Compactor v2026.18.211.2646
Sqlite3(小型關(guān)系型數(shù)據(jù)庫(kù))官方版 v3.50.4
IBM SPSS Statistics 25中文版
PowerDesigner v16.5.0.3982
Aqua Data Studio(數(shù)據(jù)庫(kù)軟件) v19.0.2.5
SQL Assistant(SQL輔助工具) v12.4.476官方版
DBConvert Studio(數(shù)據(jù)庫(kù)遷移同步工具) v3.5.1官方版


























贛公網(wǎng)安備 36010602000087號(hào)