sqlite 數據庫 介紹

文章目錄

  • 前言
  • 一、什么是 SQLite ?
  • 二、語法
  • 三、SQLite 場景
  • 四、磁盤文件

前言

下載

目前已經出到了, Version 3.46.0

SQLite,是一款輕型的數據庫,是遵守ACID的關系型數據庫管理系統,它包含在一個相對小的C庫中。它是D.RichardHipp建立的公有領域項目。它的設計目標是嵌入式的,而且已經在很多嵌入式產品中使用了它,它占用資源非常的低,在嵌入式設備中,可能只需要幾百K的內存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統,同時能夠跟很多程序語言相結合,比如 Tcl、C#、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源的世界著名數據庫管理系統來講,它的處理速度比他們都快。SQLite第一個Alpha版本誕生于2000年5月。 至2021年已經接近有21個年頭,SQLite也迎來了一個版本 SQLite 3已經發布。


提示:以下是本篇文章正文內容,下面案例可供參考

一、什么是 SQLite ?

在這里插入圖片描述

SQLite 是一個用 C 語言編寫的庫,實現了一個小型、快速、獨立、高可靠、功能齊全的 SQL 數據庫引擎。SQLite 是全球使用最廣泛的數據庫引擎。它內置于所有手機和大多數計算機中,并與人們日常使用的無數其他應用程序捆綁在一起。更多信息…
SQLite 的文件格式穩定、跨平臺且向后兼容,開發人員承諾到 2050 年都保持這種狀態。SQLite 數據庫文件通常用作在系統之間傳輸豐富內容的容器[1][2][3],以及作為數據的長期存檔格式[4]。目前有超過 1 萬億(1e12)個 SQLite 數據庫在活躍使用[5]。
SQLite 的源代碼屬于公共領域,任何人都可以免費用于任何目的。

官網下載

https://sqlite.org/download.html

二、語法

計算當前日期。
SELECT date();
計算當前月的最后一天。
SELECT date('now','start of month','+1 month','-1 day');
計算給定 Unix 時間戳 1092941466 的日期和時間。
SELECT datetime(1092941466, 'unixepoch');
SELECT datetime(1092941466, 'auto'); -- 對于 1970 年初不起作用!
計算給定 Unix 時間戳 1092941466,并根據本地時區進行補償。
SELECT datetime(1092941466, 'unixepoch', 'localtime');
計算當前的 Unix 時間戳。
SELECT unixepoch();
SELECT strftime('%s');
計算自美國《獨立宣言》簽署以來的天數。
SELECT julianday('now') - julianday('1776-07-04');
計算自 2004 年某一特定時刻以來的秒數:
SELECT unixepoch() - unixepoch('2004-01-01 02:34:56');
計算本年度十月的第一個星期二的日期。
SELECT date('now','start of year','+9 months','weekday 2');
以秒為單位,計算具有毫秒精度的自 Unix 紀元以來的時間:
SELECT (julianday('now') - 2440587.5)*86400.0;
SELECT unixepoch('now','subsec');
計算如果亞伯拉罕·林肯還活著,他現在的年齡:
SELECT timediff('now','1809-02-12');

三、SQLite 場景

SQLite 具有廣泛的使用場景,包括但不限于以下幾個方面:
移動應用:在智能手機和平板電腦的應用程序中,SQLite 常被用于存儲應用數據,如用戶設置、本地緩存、離線數據等。由于其輕量級和無需服務器配置的特點,非常適合資源受限的移動環境。
桌面應用:小型的桌面應用程序可以使用 SQLite 來存儲配置信息、用戶偏好、本地數據等。
嵌入式系統:在嵌入式設備和物聯網設備中,SQLite 可用于存儲設備的狀態信息、傳感器數據、配置參數等。
原型開發和測試:在項目的早期階段或進行快速原型開發時,SQLite 易于設置和使用,能夠快速驗證數據存儲和查詢的邏輯。
單用戶應用:對于僅由單個用戶使用的應用程序,SQLite 提供了一種簡單且有效的數據存儲解決方案,無需復雜的數據庫服務器管理。
本地數據存儲:例如在一些數據分析工具中,用于臨時存儲和處理本地的數據文件。
小型網站和博客:對于流量較小、數據量不大的網站或博客,SQLite 可以作為簡單的數據庫來存儲文章、評論、用戶信息等。
總之,SQLite 在需要輕量級、本地、單用戶或小規模數據存儲和管理的場景中表現出

四、磁盤文件

在 SQLite 中,一個數據庫就是一個單一的磁盤文件1。此外,其文件格式是跨平臺的。在一臺機器上創建的數據庫可以被復制并在具有不同架構的另一臺機器上使用。SQLite 數據庫在 32 位和 64 位機器之間以及大端和小端架構之間都是可移植的。
SQLite 數據庫文件格式也是穩定的。SQLite 3 的所有版本都能讀取和寫入自 2004 年 6 月 18 日首次發布的 SQLite 3(版本 3.0.0)所創建的數據庫文件。這就是“向后兼容性”。開發人員承諾在 SQLite 3 的所有未來版本中保持數據庫文件格式的向后兼容性。“向前兼容性”意味著較舊版本的 SQLite 也能夠讀取和寫入由較新版本創建的數據庫。SQLite 通常(但并非完全)具有向前兼容性。
SQLite 數據庫文件格式的穩定性以及其跨平臺的特性相結合,使得 SQLite 數據庫文件成為應用文件格式的絕佳選擇。美國國會圖書館認可這一點,將 SQLite 列為長期保存數字內容的推薦存儲格式。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/41353.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/41353.shtml
英文地址,請注明出處:http://en.pswp.cn/web/41353.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VMware虛擬機配置橋接網絡

轉載:虛擬機橋接網絡配置 一、VMware三種網絡連接方式 VMware提供了三種網絡連接方式,VMnet0, VMnet1, Vmnet8,分別代表橋接,Host-only及NAT模式。在VMware的編輯-虛擬網絡編輯器可看到對應三種連接方式的設置(如下圖…

美好生活的 100 條建議

簡介 一些簡潔明了的人生建議,易于理解,并且能夠為日常生活中的各個方面提供實用的指導。 財富 (Possessions) 1. If you want to find out about people’s opinions on a product, google \reddit. You’ll get real people arguing, as compared t…

SpringBoot2.2.6使用spring-boot-validation讀取不到自定義配置文件中的屬性

SpringBoot2.2.6沒有做message.properties文件中屬性的自動讀取配置。解決方法有兩種: 1. 升級springboot版本到2.6.x以上 2. 在現有springboot版本的基礎上添加以下自定義配置: Configuration public class RequestParamValidationConfig implements…

學習筆記——交通安全分析12

目錄 前言 當天學習筆記整理 4信控交叉口交通安全分析 結束語 前言 #隨著上一輪SPSS學習完成之后,本人又開始了新教材《交通安全分析》的學習 #整理過程不易,喜歡UP就點個免費的關注趴 #本期內容接上一期11筆記 當天學習筆記整理 4信控交叉口交…

ORA-03115 ORA-06594--空間不足 rman 磁帶壓縮備份 控制文件恢復后備份信息丟失

---用舊的控制文件恢復后 這個控制文件本身的備份信息不在此還原出的控制文件中。所以這個備份的控制文件就刪不掉,看不到。 但是只要設置正確的dbid,還是可以用恢復這個控制文件的 正常未恢復過controlfile的話,這個控制文件備份信息在現有…

Square Root SAM論文原理

文章目錄 Square Root SAM論文原理核心原理SLAM問題的3種表示貝葉斯網絡因子圖(Factor graph)馬爾科夫隨機場(Markov Random Field, MRF) SLAM最小二乘問題&線性化因式分解 factorization矩陣與圖(Matrices ? Graphs)因式分解&變量消元(Factori…

Kafka系列之Kafka知識超強總結

一、Kafka簡介 Kafka是什么 Kafka是一種高吞吐量的分布式發布訂閱消息系統(消息引擎系統),它可以處理消費者在網站中的所有動作流數據。 這種動作(網頁瀏覽, 搜索和其他用戶的行動)是在現代網絡上的許多社…

14-22 劍和遠方2 - 深度神經網絡中的學習機制

概論 在第一部分中,我們深入探討了人工智能的興衰簡史以及推動人工智能發展的努力。我們研究了一個簡單的感知器,以了解其組件以及簡單的 ANN 如何處理數據和權重層。在簡單的 ANN 中,不會對數據執行特定操作。ANN 中的激活函數是一個線性函…

Surface splatting (2D Gaussian splatting)代碼分析

源碼地址 colab.research.google.com/drive/1qoclD7HJ3-o0O1R8cvV3PxLhoDCMsH8W 核心代碼 surface_splatting def surface_splatting(means3D, scales, quats, colors, opacities, intrins, viewmat, projmat):# Rasterization setupprojmat torch.zeros(4,4).cuda()projm…

flask使用定時任務flask_apscheduler(APScheduler)

Flask-APScheduler描述: Flask-APScheduler 是一個 Flask 擴展,增加了對 APScheduler 的支持。 APScheduler 有三個內置的調度系統可供您使用: Cron 式調度(可選開始/結束時間) 基于間隔的執行(以偶數間隔運行作業…

c#中的超時終止

在C#中,可以使用CancellationToken和Task的超時機制來實現調用方法時的超時終止。 一 用Task.Delay(int)模擬耗時操作 static async Task Main(string[] args){using (var cts new CancellationTokenSource(1 * 1000)){await doSomething(cts.Token);}Console.Wr…

移動校園(7)ii:uniapp響應攔截器處理token,以及微信小程序報錯當前頁面正在處于跳轉狀態,請稍后再進行跳轉....

依據昨天的寫完,在token過期之后,再次調用接口,會觸發后端攔截,扔進全局錯誤處理中間件 前端說明提示都沒有,只有一個這個,現在優化一下,再寫一個類似全局后置守衛,當狀態碼是401的時…

RAID 冗余磁盤陣列

RAID也是Linux操作系統中管理磁盤的一種方式。 只有Linux操作系統才支持LVM的磁盤管理方式。 而RAID是一種通用的管理磁盤的技術,使用于多種操作系統。 優勢:提升數據的讀寫速度,提升數據的可靠性。具體實現哪什么功能,要看你所…

RGB樹-美團2023筆試(codefun2000)

題目鏈接 RGB樹-美團2023筆試(codefun2000) 題目內容 塔子哥是一位著名的冒險家,他經常在各種森林里探險。今天,他來到了道成林,這是一片美麗而神秘的森林。在探險途中,他遇到了一棵 n 個節點的樹,樹上每個節點都被涂…

LVGL移植與VS模擬器使用

一、移植文件介紹 二、移植部分 第一步:創建LVGL文件夾 第二步: 構造LVGL文件夾:LVGL - GUI - lvgl - 第三步:添加文件 3.1 從examples中添加2個.c文件 3.2 從src中添加文件 draw文件 extra文件 第四步: 三、Ke…

Linux系統安裝軟件包的方法rpm和yum詳解

起因: 本篇文章是記錄學習Centos7的歷程 關于rpm 常見命令 1)查看已經安裝的軟件包 rpm -q 軟件包名 2)查看文件的相關信息 rpm -qi 軟件包名 3)查看軟件包的依賴關系 就是說要想安裝這個軟件包,就必須把一些前…

三級_網絡技術_04_中小型網絡系統總體規劃與設計

1.下列關于路由器技術特征的描述中,正確的是()。 吞吐量是指路由器的路由表容量 背板能力決定了路由器的吞吐量 語音、視頻業務對延時抖動要求較低 突發處理能力是以最小幀間隔值來衡量的 2.下列關于路由器技術特征的描述中,正確的是()。 路由器的…

springboot公寓租賃系統-計算機畢業設計源碼03822

摘要 1 緒論 1.1 研究背景與意義 1.2選題背景 1.3論文結構與章節安排 2 公寓租賃系統系統分析 2.1 可行性分析 2.1.1 技術可行性分析 2.1.2 經濟可行性分析 2.1.3 法律可行性分析 2.2 系統功能分析 2.2.1 功能性分析 2.2.2 非功能性分析 2.3 系統用例分析 2.4 系…

韋東山嵌入式linux系列-第一個實驗

1 前言 筆者使用的是韋東山STM32MP157 Pro的板子,環境搭建部分按照說明文檔配置完成。配置橋接網卡實現板子、windows、ubuntu的通信,也在開發板掛載 Ubuntu 的NFS目錄 ,這里就不再贅述了。 板子: 192.168.5.9 windows: 192.168.5.10 ubunt…

【linux】服務器創建RAID1

【linux】服務器創建RAID1 文章目錄 【linux】服務器創建RAID1一、配置介紹raid介紹raid類型RAID 0:RAID 1:RAID 5:RAID 6:二、配置RAID硬件RAID:軟件RAID:三、軟件配置RAID1(以linux為例)1.先進入管理員模式2.安裝mdadm工具3.創建raid1數組4.查看RAID數組狀態5.格式化和掛載…