自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

iOS SQLite基礎(chǔ)內(nèi)容簡(jiǎn)介

移動(dòng)開發(fā) iOS
SQLite引擎不是個(gè)程序與之通信的獨(dú)立進(jìn)程,而是連接到程序中成為它的一個(gè)主要部分。所以主要的通信協(xié)議是在編程語言內(nèi)的直接API調(diào)用。這在消耗總量、延遲時(shí)間和整體簡(jiǎn)單性上有積極的作用。

SQLite,是一款輕型的數(shù)據(jù)庫,是遵守ACID的關(guān)聯(lián)式數(shù)據(jù)庫管理系統(tǒng),它的設(shè)計(jì)目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語言相結(jié)合,比如 Tcl、C#、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源世界著名的數(shù)據(jù)庫管理系統(tǒng)來講,它的處理速度比他們都快。SQLite第一個(gè)Alpha版本誕生于2000年5月。 至今已經(jīng)有12個(gè)年頭,SQLite也迎來了一個(gè)版本 SQLite 3已經(jīng)發(fā)布。

SQLite是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它包含在一個(gè)相對(duì)小的C庫中。它是D.RichardHipp建立的公有領(lǐng)域項(xiàng)目。

不像常見的客戶-服務(wù)器范例,SQLite引擎不是個(gè)程序與之通信的獨(dú)立進(jìn)程,而是連接到程序中成為它的一個(gè)主要部分。所以主要的通信協(xié)議是在編程語言內(nèi)的直接API調(diào)用。這在消耗總量、延遲時(shí)間和整體簡(jiǎn)單性上有積極的作用。整個(gè)數(shù)據(jù)庫(定義、表、索引和數(shù)據(jù)本身)都在宿主主機(jī)上存儲(chǔ)在一個(gè)單一的文件中。它的簡(jiǎn)單的設(shè)計(jì)是通過在開始一個(gè)事務(wù)的時(shí)候鎖定整個(gè)數(shù)據(jù)文件而完成的。

SQLite特性

1. ACID事務(wù)
2. 零配置 – 無需安裝和管理配置
3. 儲(chǔ)存在單一磁盤文件中的一個(gè)完整的數(shù)據(jù)庫
4. 數(shù)據(jù)庫文件可以在不同字節(jié)順序的機(jī)器間自由的共享
5. 支持?jǐn)?shù)據(jù)庫大小至2TB
6. 足夠小, 大致3萬行C代碼, 250K
7. 比一些流行的數(shù)據(jù)庫在大部分普通數(shù)據(jù)庫操作要快
8. 簡(jiǎn)單, 輕松的API
9. 包含TCL綁定, 同時(shí)通過Wrapper支持其他語言的綁定
10. 良好注釋的源代碼, 并且有著90%以上的測(cè)試覆蓋率
11. 獨(dú)立: 沒有額外依賴
12. Source完全的Open, 你可以用于任何用途, 包括出售它

13. 支持多種開發(fā)語言,C, PHP, Perl, Java, C#,Python, Ruby

SQLite功能
SQLite雖然很小巧,但是支持的SQL語句不會(huì)遜色于其他開源數(shù)據(jù)庫,它支持的SQL包括:
ATTACH DATABASE
BEGIN TRANSACTION
comment
COMMIT TRANSACTION
COPY
CREATE INDEX
CREATE TABLE
CREATE TRIGGER
CREATE VIEW
DELETE
DETACH DATABASE
DROP INDEX
DROP TABLE
DROP TRIGGER
DROP VIEW
END TRANSACTION
EXPLAIN
expression
INSERT
ON CONFLICT clause
PRAGMA
REPLACE
ROLLBACK TRANSACTION
SELECT
UPDATE
同時(shí)它還支持事務(wù)處理功能等等。也有人說它象Microsoft的Access,有時(shí)候真的覺得有點(diǎn)象,但是事實(shí)上它們區(qū)別很大。比如SQLite 支持跨平臺(tái),操作簡(jiǎn)單,能夠使用很多語言直接創(chuàng)建數(shù)據(jù)庫,而不象Access一樣需要Office的支持。如果你是個(gè)很小型的應(yīng)用,或者你想做嵌入式開發(fā),沒有合適的數(shù)據(jù)庫系統(tǒng),那么現(xiàn)在你可以考慮使用SQLite。目前它的最新版本是 3.7.8 。它的官方網(wǎng)站是:http://www.sqlite. org或者h(yuǎn)ttp://www.sqlite .com .cn,能在上面獲得源代碼和文檔。同時(shí)因?yàn)閿?shù)據(jù)庫結(jié)構(gòu)簡(jiǎn)單,系統(tǒng)源代碼也不是很多,也適合想研究數(shù)據(jù)庫系統(tǒng)開發(fā)的專業(yè)人士

SQLite類型

SQLite的數(shù)據(jù)類型
首先你會(huì)接觸到一個(gè)讓你驚訝的名詞: Typelessness(無類型). 對(duì)! SQLite是無類型的. 這意味著你可以保存任何類型的數(shù)據(jù)到你所想要保存的任何表的任何列中, 無論這列聲明的數(shù)據(jù)類型是什么(只有在一種情況下不是, 稍后解釋). 對(duì)于SQLite來說對(duì)字段不指定類型是完全有效的. 如:
Create Table ex1(a, b, c);
誠(chéng)然SQLite允許忽略數(shù)據(jù)類型, 但是仍然建議在你的Create Table語句中指定數(shù)據(jù)類型. 因?yàn)閿?shù)據(jù)類型對(duì)于你和其他的程序員交流, 或者你準(zhǔn)備換掉你的數(shù)據(jù)庫引擎時(shí)能起到一個(gè)提示或幫助的作用. SQLite支持常見的數(shù)據(jù)類型, 如:
CREATE TABLE ex2(
a VARCHAR(10),
b NVARCHAR(15),
c TEXT,
d INTEGER,
e FLOAT,
f BOOLEAN,
g CLOB,
h BLOB,
i TIMESTAMP,
j NUMERIC(10,5)
k VARYING CHARACTER (24),
l NATIONAL VARYING CHARACTER(16)
);
前面提到在某種情況下, SQLite的字段并不是無類型的. 即在字段類型為”Integer Primary Key”時(shí).

SQLite語言綁定

可以從C/C++程序中使用這個(gè)庫,還可以獲得對(duì)Tcl和一些其他腳本語言的綁定。
在CPAN的DBD::SQLite上有一個(gè)Perl的DBI/DBD模塊,它不是到SQLite的接口,而是包括整個(gè)SQLite數(shù)據(jù)庫引擎在其中并不需要任何額外的軟件。
還有一個(gè)Python模塊叫做PySQLite。
PHP從PHP5.0開始包含了SQLite,但是自5.1版之后開始成為一個(gè)延伸函式庫。SQLite能與PHP4一起工作但不包含在其中。
Rails2.0.3將缺省的數(shù)據(jù)庫配置改為了SQLite 3。

SQLite客戶端管理

SQLite亦可以作為桌面數(shù)據(jù)庫使用,以下為第三方SQLite的GUI軟件。例如,
SQLiteMan,使用QT開發(fā)的一個(gè)SQLite客戶端,支持多語言、跨平臺(tái)。SQLiteMan
SQLite Manager, 以 火狐瀏覽器的擴(kuò)展形式提供的SQLite客戶端。
SQLite Database Browser, a graphical client to access SQLite databases
SqlPro SQL Client, another graphical client to work with SQLite databases。

SQLite版本發(fā)布

2010年08月09日,SQLite 數(shù)據(jù)庫發(fā)布 3.7.0.1 版本,該版本改進(jìn)內(nèi)容:
修正了一個(gè)潛在的數(shù)據(jù)庫崩潰的問題,這個(gè)問題產(chǎn)生于 3.7.0 和 3.6.23.1 版本的程序所生成的文件
修正了自動(dòng)重建索引可能導(dǎo)致的性能問題。
2010年10月19日,SQLite 3.7.3 發(fā)布,關(guān)系數(shù)據(jù)庫,該版本增加了 sqlite3_create_function_v2() 接口,用以處理析構(gòu)器(destructor)的回調(diào);通過使用應(yīng)用提供的回調(diào)函數(shù)來定義查詢區(qū)域的邊界以增加對(duì)自定義 r-tree 查詢;默認(rèn)的頁緩存努力避免內(nèi)存分配大于預(yù)設(shè)SQLITE_CONFIG_PAGECACHE的值等。
責(zé)任編輯:閆佳明 來源: baike.baidu
相關(guān)推薦

2010-07-13 09:02:16

Perl

2010-01-28 10:07:52

C++手冊(cè)

2010-04-26 09:51:54

Oracle OCP

2010-03-03 15:26:54

Python編碼規(guī)范

2010-03-15 13:35:25

Python GUI

2010-04-07 10:51:19

Oracle客戶

2018-09-25 23:15:12

Office 應(yīng)用微軟

2011-06-02 10:24:48

Android SQLite

2011-05-31 13:50:14

CiscoIOS

2014-07-10 10:02:01

iOSHome Kit框架

2011-05-31 13:15:05

路由器IOSCisco

2011-05-31 13:50:11

路由器CiscoIOS

2011-05-31 13:50:17

CiscoIOS

2011-05-31 13:15:03

路由器CiscoIOS

2011-05-31 13:52:22

口令CiscoIOS

2011-07-12 15:18:01

SQLite數(shù)據(jù)庫引擎

2011-04-18 13:40:15

SQLite

2009-09-21 13:19:06

Hibernate s

2013-07-25 14:44:48

sqlite實(shí)例教程iOS開發(fā)學(xué)習(xí)sqlite打造詞典

2011-07-12 15:22:04

SQLite數(shù)據(jù)庫
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)