国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

初識SQLITE3數(shù)據(jù)庫

瀏覽:286日期:2023-04-05 14:56:06

數(shù)據(jù)庫DataBase,我們都沒有接觸過數(shù)據(jù)庫,那么數(shù)據(jù)庫是什么?

它是一個有結(jié)構(gòu)的、集成的、可共享的統(tǒng)一管理的數(shù)據(jù)集合!

所謂有結(jié)構(gòu)的,指的是數(shù)據(jù)是按一定的模型組織起來的。

簡單的說,拿個箱子,用隔板把它隔開,如此箱子被分為許多格子,因而我們像填坑一樣把數(shù)據(jù)放進去!OK,那么就把數(shù)據(jù)組裝起來,有人說不如用結(jié)構(gòu)體?但是不要忘了,箱子還可以分類、儲存。這是結(jié)構(gòu)體不能做到的!

所謂集成的,是指數(shù)據(jù)庫中集中存放著企業(yè)各種各樣的數(shù)據(jù)。

就如上面我所講的一樣,箱子把零散的數(shù)據(jù)集結(jié)在一起一樣!

而且你可以在這個箱子里面把你多余的東西全部清理掉,對吧?

如此集中存放的好處顯而易見:

(1)一個數(shù)據(jù)只需一個備份,重復(fù)存儲少,即消除了數(shù)據(jù)的冗余。

(2)沒有數(shù)據(jù)冗余,也就能保證數(shù)據(jù)的一致。

所謂共享,指的是數(shù)據(jù)庫中的數(shù)據(jù)可以被不同的用戶使用。也就是說,每一個用戶可以按自己的要求訪問相同的數(shù)據(jù)庫。

所謂統(tǒng)一管理的,指的是數(shù)據(jù)庫由DBMS統(tǒng)一管理,任何數(shù)據(jù)訪問都是通過DBMS來完成的。

共享和統(tǒng)一管理我就不說了,一個箱子當然是可以給其他人用啦,只要你不上鎖!

剛才大家又見到了一個新的單詞:DBMS

這是個什么東西呢?

其實他的全名為DataBase Management System數(shù)據(jù)庫管理系統(tǒng)

是用來管理數(shù)據(jù)庫的一種商品化軟件。
所有訪問數(shù)據(jù)庫的請求都由DBMS來完成的。
DBMS提供了操作數(shù)據(jù)庫的許多命令(語言),即SQL語言。
官方的解釋非常復(fù)雜,什么應(yīng)用層,語言翻譯處理、數(shù)據(jù)存取層等等!好吧,我非常討厭這樣子,于是就有我來給大家縮減地來講解!

通過上面的圖大家有看清是咋么回事嗎?多么直白!但有人要問了,咋么管理呢?那就是我們的SQL語句了!當然在linux下絕對不會使用非常大的數(shù)據(jù)庫,因而我們只要掌握一些基本語句就可以了!

SQL語句我將在后面的博客進行相應(yīng)的歸納!

剛才是說到數(shù)據(jù)庫管理了吧?但是我們還要知道數(shù)據(jù)庫有哪些對不對?

Oracle 不用我多說,大家基本都聽過這個數(shù)據(jù)庫!特點是:支持多語言,極好的并行處理能力,多用于金融,保險等行業(yè)
SQL Server 微軟產(chǎn)品,很好的數(shù)據(jù)庫管理系統(tǒng),最好的應(yīng)該是現(xiàn)在微軟推廣云服務(wù),不瞞大家,我在azure上搭建過服務(wù)器,用的就是它!集成化極好,雖然我不是很會使用它!
DB2,這個也是我很少接觸過的數(shù)據(jù)庫!僅僅知道它的移植性非常好!
ACCESS 不多說了,office就有,圖形化界面就是操作很簡單
Sqlite3 極小的數(shù)據(jù)庫,等下將是我的主角!
好了,這5個數(shù)據(jù)庫類型已經(jīng)給大家介紹了!

那么數(shù)據(jù)庫還有一個非常重要的概念:數(shù)據(jù)模型

其實它就是一個組合:

(1) 數(shù)據(jù)結(jié)構(gòu) //類型 數(shù)值等

(2) 數(shù)據(jù)操作 //遍歷 刪除等

(3) 數(shù)據(jù)的完整性約束 //一定的關(guān)系連接

主要有4大類

層次數(shù)據(jù)模型
網(wǎng)狀數(shù)據(jù)模型
關(guān)系數(shù)據(jù)模型
面向?qū)ο髷?shù)據(jù)庫模型
我就講關(guān)系數(shù)據(jù),因為這個才是重點,至于其他,你想了解可以百度,面向?qū)ο蟮哪P兔菜谱罱艅倓偦鹌穑玫牟皇呛芏?

總所周知,進入學校,學校會按什么給你定義呢?學號!對,因而學號和你的名字,成績及其他各類信息存在了關(guān)系,找到學號就是找到了你的所有信息,這就是關(guān)系模型!

那么它如何保證數(shù)據(jù)的獨立性的呢?那就要看數(shù)據(jù)庫他是如何構(gòu)造的!

數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)是指數(shù)據(jù)庫系統(tǒng)是由外模式、模式和內(nèi)模式三級組成。但是我并不打算說這個,因為本人也對這個抽象的東西感到一些恐懼,其實在做開發(fā)過程中,我們壓根就不用去了解他,就算我去面試,如果考官問我,我也會直接告訴他,我不知道,尼瑪,我又不是來制造數(shù)據(jù)庫的人!大家不用去糾結(jié)于它,我提它就是說知道就行!

還有就是數(shù)據(jù)庫中還存在的候選鍵,主鍵什么,不要去管它了,這個等到我們在用sql server的時候再用吧!只要記住一點:學號就是你的主鍵!唯一標識符!

而我為什么又要選擇用sqlite3來作為嵌入式使用的數(shù)據(jù)庫呢?

因為它小!體積適合!嵌入式的東西空間是有限的,用它來做數(shù)據(jù)正好!
可移植性高 ,嵌入式 我不多說,必須要有移植性!
編程接口簡單,簡單的編程我就可以用它了!不用它用什么?
代碼開源,節(jié)約成本那是必須的!否則做什么嵌入式啊!

具體優(yōu)勢有哪些呢? 百度一下!

SQLite的優(yōu)勢
內(nèi)存占用量小
事務(wù)操作是原子,一致,孤立,并且持久的(ACID),即使在系統(tǒng)崩潰和電源故障之后。
ACID兼容(原子性,一致性,獨立性,可持久性),支持視圖,子查詢,觸發(fā)器
單個庫文件中包含數(shù)據(jù)庫引擎與接口,且其運行不依賴其它庫
可以將數(shù)據(jù)放進單個文件
為C/C++, PHP等應(yīng)用提供了接口
免費
允許為SQL命令集動態(tài)添加自定義函數(shù)(簡單函數(shù)及聚集函數(shù)),而無需重編SQLite庫
改進的B-樹。對于表采用B+樹,大大提高查詢效率。
好了,今天我寫到這了,好餓,我要去吃飯了!回頭我來寫sqlite3的安裝與sql語法!

標簽: SQLite
相關(guān)文章:
主站蜘蛛池模板: 靖江市| 瑞安市| 遂溪县| 剑川县| 镇平县| 岳普湖县| 阳高县| 兴国县| 兴文县| 济南市| 浦江县| 大邑县| 华阴市| 县级市| 凤庆县| 武川县| 呈贡县| 稷山县| 江都市| 广东省| 巧家县| 塔城市| 临猗县| 阳泉市| 通道| 大同县| 金塔县| 邯郸县| 兰州市| 遂昌县| 保亭| 雅安市| 大洼县| 西和县| 呼和浩特市| 乌拉特后旗| 长泰县| 安福县| 孝昌县| 阜新| 赣州市|