日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQLLite (一)基本介绍

發(fā)布時(shí)間:2024/4/11 数据库 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQLLite (一)基本介绍 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
隨著云和mobile設(shè)備的流行,SQLite作為一款開源的輕量級數(shù)據(jù)庫也被越來越廣泛地應(yīng)用。從HTML5到android,ios和win8為代表的mobile平臺都對它提供了天然的支持與整合。因此對SQLite的學(xué)習(xí)也就顯得非常重要。從本文開始的一系列文章將展開對sqllite的介紹。

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

注:ACID,指數(shù)據(jù)庫事務(wù)正確執(zhí)行的四個(gè)基本要素的縮寫。包含:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability)。一個(gè)支持事務(wù)(Transaction)的數(shù)據(jù)庫系統(tǒng),必需要具有這四種特性,否則在事務(wù)過程(Transaction processing)當(dāng)中無法保證數(shù)據(jù)的正確性,交易過程極可能達(dá)不到交易方的要求。

SQLite,作為一款輕型的數(shù)據(jù)庫,它的設(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)來講,它的處理速度比他們都快。

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

注:官方網(wǎng)站是:http://www.sqlite. org或者h(yuǎn)ttp://www.sqlite .com .cn,能在上面獲得源代碼和文檔。

特性:

  1. ACID事務(wù)

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

SQLite的數(shù)據(jù)類型

首先你會接觸到一個(gè)讓你驚訝的名詞: Typelessness(無類型). 對! SQLite是無類型的. 這意味著你可以保存任何類型的數(shù)據(jù)到你所想要保存的任何表的任何列中, 無論這列聲明的數(shù)據(jù)類型是什么(只有在一種情況下不是, 稍后解釋). 對于SQLite來說對字段不指定類型是完全有效的. 如:

  Create Table ex1(a, b, c);   誠然SQLite允許忽略數(shù)據(jù)類型, 但是仍然建議在你的Create Table語句中指定數(shù)據(jù)類型. 因?yàn)閿?shù)據(jù)類型對于你和其他的程序員交流, 或者你準(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í).


后續(xù)文章講基于ios,介紹c風(fēng)格的sqllite數(shù)據(jù)庫操作。

總結(jié)

以上是生活随笔為你收集整理的SQLLite (一)基本介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。