国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > SQLite > 正文

SQLite適用的范圍

2024-09-07 00:10:02
字體:
來源:轉載
供稿:網(wǎng)友

SQLite不同于其他大部分的SQL數(shù)據(jù)庫引擎,因為它的首要設計目標就是簡單化:

  • 易于管理
  • 易于使用
  • 易于嵌入其他大型程序
  • 易于維護和配置

許多人喜歡SQLite因為它的小巧和快速. 但是這些特性只是它的部分優(yōu)點, 使用者還會發(fā)現(xiàn)SQLite是非常穩(wěn)定的. 出色的穩(wěn)定性源于它的簡單, 越簡單就越不容易出錯. 除了上述的簡單、小巧和穩(wěn)定性外, 最重要的在于SQLite力爭做到簡單化.

簡單化在一個數(shù)據(jù)庫引擎中可以說是一個優(yōu)點, 但也可能是個缺點, 主要決定于你想要做什么. 為了達到簡單化, SQLite省略了一些人們認為比較有用的特性, 例如高并發(fā)性、 嚴格的存取控制、 豐富的內置功能、 存儲過程、復雜的SQL語言特性、 XML以及Java的擴展, 超大的萬億級別的數(shù)據(jù)測量等等. 如果你需要使用上述的這些特性并且不介意它們的復雜性, 那么SQLite也許就不適合你了. SQLite沒有打算作為一個企業(yè)級的數(shù)據(jù)庫引擎, 也并不打算和Oracle或者PostgreSQL競爭.

僅憑經(jīng)驗來說SQLite適用于以下場合: 當你更看中簡單的管理、使用和維護數(shù)據(jù)庫, 而不是那些企業(yè)級數(shù)據(jù)庫提供的不計其數(shù)的復雜功能的時候,使用SQLite是一個比較明智的選擇. 事實也證明, 人們在許多情況下已經(jīng)清楚的認識到簡單就是最好的選擇.

SQLite最佳試用場合

  • 網(wǎng)站

    作為數(shù)據(jù)庫引擎SQLite適用于中小規(guī)模流量的網(wǎng)站(也就是說, 99.9%的網(wǎng)站). SQLite可以處理多少網(wǎng)站流量在于網(wǎng)站的數(shù)據(jù)庫有多大的壓力. 通常來說, 如果一個網(wǎng)站的點擊率少于100000次/天的話, SQLite是可以正常運行的. 100000次/天是一個保守的估計, 不是一個準確的上限. 事實證明, 即使是10倍的上述流量的情況下SQLite依然可以正常運行.

  • 嵌入式設備和應用軟件

    因為SQLite數(shù)據(jù)庫幾乎不需要管理, 因此對于那些無人值守運行或無人工技術支持的設備或服務, SQLite是一個很好的選擇. SQLite能很好的適用于手機, PDA, 機頂盒, 以及其他儀器. 作為一個嵌入式數(shù)據(jù)庫它也能夠很好的應用于客戶端程序.

  • 應用程序文件格式

    SQLite作為桌面應用程序的本地磁盤文件格式取得了巨大成功.例如金融分析工具、CAD 包、檔案管理程序等等. 一般的數(shù)據(jù)庫打開操作需要調用sqlite3_open()函數(shù),并且標記一個顯式本地事務的起始點(BEGIN TRANSACTION)來保證以獨占的方式得到文件的內容. 文件保存將執(zhí)行一個提交(COMMIT)同時標記另一個顯式本地事務起始點. 這種事務處理的作用就是保證對于應用程序數(shù)據(jù)文件的更新是原子的、持久的、獨立的和一致的.

    數(shù)據(jù)庫里可以加入一些臨時的觸發(fā)器,用來把所有的改變記錄在一張臨時的取消/重做日志表中. 當用戶按下取消/重做按鈕的時候這些改變將可以被回滾. 應用這項技術實現(xiàn)一個無限級的取消/重做功能只需要編寫很少的代碼.

  • 替代某些特別的文件格式

    許多程序使用fopen(), fread(), 或 fwrite()函數(shù)創(chuàng)建和管理一些自定義的文件用來保存數(shù)據(jù). 使用SQLite替代這些自定義的文件格式將是一種很好的選擇.

  • 內部的或臨時的數(shù)據(jù)庫

    對于那些有大量的數(shù)據(jù)需要用不同的方式篩選分類的程序, 相對于編寫同樣功能的代碼, 如果你把數(shù)據(jù)讀入一個內存中的SQLite數(shù)據(jù)庫, 然后使用連接查詢和ORDER BY子句按一定的順序和排列提取需要的數(shù)據(jù), 通常會更簡單和快速. 按照上述的方法使用內嵌的SQLite數(shù)據(jù)庫將會使程序更富有靈活性, 因為添加新的列或索引不用重寫任何查詢語句.

  • 命令行數(shù)據(jù)集分析工具

    有經(jīng)驗的SQL用戶可以使用SQLite命令行程序去分析各種混雜的數(shù)據(jù)集. 原是數(shù)據(jù)可以從CSV(逗號分隔值文件)文件中導入, 然后被切分產(chǎn)生無數(shù)的綜合數(shù)據(jù)報告. 可能得用法包括網(wǎng)站日志分析, 運動統(tǒng)計分析, 編輯規(guī)劃標準, 分析試驗結果.

    當然你也可以用企業(yè)級的客戶端/服務器數(shù)據(jù)庫來做同樣的事情. 在這種情況下使用SQLite的好處是: SQLite的部署更為簡單并且結果數(shù)據(jù)庫是一個單獨的文件, 你可以把它存儲在軟盤或者優(yōu)盤或者直接通過email發(fā)給同事.

  • 在Demo或測試版的時候作為企業(yè)級數(shù)據(jù)庫的替代品

    如果你正在編寫一個使用企業(yè)級數(shù)據(jù)庫引擎的客戶端程序, 使用一個允許你連接不同SQL數(shù)據(jù)庫引擎的通用型數(shù)據(jù)庫后臺將是很有意義的. 其更大的意義在于將SQLite數(shù)據(jù)庫引擎靜態(tài)的連接到客戶端程序當中,從而內嵌SQLite作為混合的數(shù)據(jù)庫支持. 這樣客戶端程序就可以使用SQLite數(shù)據(jù)庫文件做獨立的測試或者驗證.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 静宁县| 侯马市| 沽源县| 溆浦县| 工布江达县| 德令哈市| 松原市| 盐城市| 郯城县| 九寨沟县| 武强县| 鹤庆县| 龙里县| 河源市| 嘉义县| 隆林| 焉耆| 灌阳县| 延津县| 孝义市| 黄平县| 冷水江市| 瓮安县| 辽宁省| 南雄市| 江津市| 宜兴市| 会昌县| 五河县| 延津县| 景德镇市| 白银市| 南郑县| 乳山市| 乐都县| 徐汇区| 塔城市| 尼木县| 新密市| 宜兰县| 新宾|