日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
零基礎(chǔ)Python數(shù)據(jù)庫怎么學(xué)?大牛帶你揚(yáng)帆起航

前面寫了幾篇關(guān)于數(shù)據(jù)分析的文章,用爬蟲爬取了全網(wǎng)6500多只基金的作數(shù)據(jù)分析,算是數(shù)據(jù)分析篇開了個(gè)頭。當(dāng)時(shí)留下了幾個(gè)問題,其中一個(gè)問題就是我們的數(shù)據(jù)存儲(chǔ)用的是文件,其實(shí)正宗的做法就是用數(shù)據(jù)庫存儲(chǔ)。因?yàn)樽鰯?shù)據(jù)分析特別是當(dāng)你的數(shù)據(jù)量非常大時(shí)候或者后端開發(fā)的時(shí)候,肯定是要用數(shù)據(jù)庫的,所以學(xué)好數(shù)據(jù)庫非常有必要。好接下來幾篇,我將給大家介紹一下Python在數(shù)據(jù)庫里面的使用,小伙伴們,我們快開始吧~~

創(chuàng)新互聯(lián)主要從事成都做網(wǎng)站、網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)高密,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575

要點(diǎn):

  • 數(shù)據(jù)庫的分類
  • Python如何操作數(shù)據(jù)庫
  • 數(shù)據(jù)庫環(huán)境的搭建
  • 數(shù)據(jù)庫可視化的工具
  • 實(shí)例寫一個(gè)小的數(shù)據(jù)庫

1.數(shù)據(jù)庫的分類

關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫

1).什么是關(guān)系數(shù)據(jù)庫

關(guān)系型數(shù)據(jù)庫,是指采用了關(guān)系模型來組織數(shù)據(jù)的數(shù)據(jù)庫,簡(jiǎn)單來說,關(guān)系模型指的就是二維表格模型,而一個(gè)關(guān)系型數(shù)據(jù)庫就是由二維表及其之間的聯(lián)系所組成的一個(gè)數(shù)據(jù)組織。象銀行系統(tǒng)會(huì)大量的用關(guān)系數(shù)據(jù)庫.比如大家經(jīng)常用的MySQL就是典型的關(guān)系數(shù)據(jù)庫.

優(yōu)點(diǎn):

容易理解:二維表結(jié)構(gòu)是非常貼近邏輯世界的一個(gè)概念,關(guān)系模型相對(duì)網(wǎng)狀、層次等其他模型來說更容易理解

使用方便:通用的SQL語言使得操作關(guān)系型數(shù)據(jù)庫非常方便

易于維護(hù):豐富的完整性(實(shí)體完整性、參照完整性和用戶定義的完整性)大大減低了數(shù)據(jù)冗余和數(shù)據(jù)不一致的概率

2).什么是非關(guān)系數(shù)據(jù)庫

關(guān)系數(shù)據(jù)庫雖然很好,但是隨著互聯(lián)網(wǎng)大規(guī)模的爆發(fā),弱點(diǎn)也越來越明顯,比如事務(wù)的一致性,多表聯(lián)查,高并發(fā)等等瓶頸很明顯。

于是NoSQL一詞橫空出世,以鍵值對(duì)存儲(chǔ),且結(jié)構(gòu)不固定,每一個(gè)元組可以有不一樣的字段,每個(gè)元組可以根據(jù)需要增加一些自己的鍵值對(duì),這樣就不會(huì)局限于固定的結(jié)構(gòu),可以減少一些時(shí)間和空間的開銷。比如MongoDb就是典型的NoSQL型數(shù)據(jù)庫(鍵值對(duì)大家想到了什么,對(duì)json格式).

寫到這里讓我想起了當(dāng)年的IP和ATM技術(shù)之爭(zhēng),其實(shí)沒有那個(gè)技術(shù)能稱王稱霸數(shù)年,獨(dú)領(lǐng)風(fēng)騷只是一時(shí)而已,順勢(shì)而為才是王道.技術(shù)沒有***,只有最適合時(shí)代而已.

2.Python如何操作數(shù)據(jù)庫

市面上現(xiàn)在主流的數(shù)據(jù)庫有Oracle,MySQL,Mongodb,Redis,SQLite,SQL Server等等,有同學(xué)會(huì)問這么多數(shù)據(jù)庫,我的代碼怎么移植啊,放心Python有一個(gè)標(biāo)準(zhǔn)數(shù)據(jù)庫接口為DB-API,Python DB-API為開發(fā)人員提供了數(shù)據(jù)庫應(yīng)用編程接口,也就是說使用它連接各數(shù)據(jù)庫后,就可以用相同的方式操作各數(shù)據(jù)庫。

Python DB-API使用流程也非常簡(jiǎn)單:

a).引入 API 模塊

b).獲取與數(shù)據(jù)庫的連接

c).執(zhí)行相關(guān)的語句進(jìn)行查詢,搜索和存儲(chǔ)過程

d).關(guān)閉數(shù)據(jù)庫連接

寫到這里,我突然想起來一個(gè)故事(把大象放進(jìn)冰箱),三步搞定,哈哈

3.數(shù)據(jù)庫環(huán)境的搭建,SQLite起步

明白了上面的道理之后,小伙伴肯定會(huì)迫不及待的動(dòng)手操練起來,馬上就要開啟數(shù)據(jù)庫之旅,我們還是選擇從簡(jiǎn)單的開始,先從SQLite開始學(xué)習(xí)使用,為啥要選SQLite呢,數(shù)據(jù)庫的學(xué)習(xí)看似復(fù)雜,其實(shí)就是一層紙,越過這個(gè)障礙,再學(xué)其他的數(shù)據(jù)庫都非常容易的.

SQLite是一個(gè)非常簡(jiǎn)單,免費(fèi),快速而強(qiáng)大的小型數(shù)據(jù)庫(麻雀雖小五臟俱全),不需要復(fù)雜的安裝和管理,輕輕松松使用,非常適合小白入門.而且在linux和Mac上都自帶SQLite3,是不是很爽啊.

(win的同學(xué)肯定不樂意了,其實(shí)win下安裝非常簡(jiǎn)便,大家可以百度一下,最多3分鐘搞定)

我們來看一下SQLite3長(zhǎng)啥樣吧,打開Mac終端敲sqlite3:

4.數(shù)據(jù)庫可視化工具

有的時(shí)候需要用可視化的工具來查看我們的數(shù)據(jù)庫,特別是數(shù)據(jù)表格很大的時(shí)候,能查看SQLite的數(shù)據(jù)庫文件工具很多,我這里推薦使用DB Browser for SQLite,可以非常直觀的去處理SQLite 文件.

大家可以去sqlitebrowser的官網(wǎng)下載,有win,linux,mac版本,mac版本大概13M,選擇一下下載即可.

5.創(chuàng)建一個(gè)數(shù)據(jù)庫

我們先來創(chuàng)建一個(gè)數(shù)據(jù)庫,創(chuàng)建數(shù)據(jù)庫的方法有很多種,我們可以用sqlite3命令行創(chuàng)建,也可以用Python代碼去寫一個(gè)新的數(shù)據(jù)庫,也可以用DB Browser for SQlite圖形可視化創(chuàng)建,對(duì)于零基礎(chǔ)的小白,我們先用最簡(jiǎn)單的圖形界面創(chuàng)建吧.

1).打開DB Browser

step1:點(diǎn)擊新建數(shù)據(jù)庫

step2:取一個(gè)名字,比如Students

step3:點(diǎn)擊save

2).建表

一個(gè)數(shù)據(jù)庫可以用很多表,我們新建一個(gè)叫demo的表,里面的列分別是

id:INTEGER(相當(dāng)于int型)

name:TEXT(相當(dāng)于string型)

sex:TEXT(相當(dāng)于string型)

age:INTEGER(相當(dāng)于int型)

關(guān)于SQLite里面的語法,下一篇會(huì)細(xì)細(xì)講,這里大家有一個(gè)大體的認(rèn)識(shí)就可以了.

3).編輯表的內(nèi)容

step1:點(diǎn)擊Brower data

step2:點(diǎn)擊新建記錄

step3:增加每一行的內(nèi)容

然后保存退出,就會(huì)在上面***步保存的地方(Desktop),出現(xiàn)了一個(gè)Students.db

6.命令行查詢數(shù)據(jù)庫內(nèi)容

剛才我們新建了一個(gè)Students.db文件,里面其實(shí)是一個(gè)3*4的二維表格,大家是不是想用sqlite方式看一下呢,好,我們下面打開一個(gè)終端,然后用sqlite3 Students.db打開看一下

敲.tables

會(huì)出現(xiàn)一個(gè)demo表格

敲select * from demo;

會(huì)出現(xiàn)demo表格里面的內(nèi)容

注意:

sql語句一定以;結(jié)尾

是不是和我們用圖形界面創(chuàng)建的表的內(nèi)容,一模一樣啊.有同學(xué)問,SQLite里面的數(shù)據(jù)格式是一個(gè)二維表,我們的NumPy,Pandas不是專門修理二維表的嗎,比如CSV,Excel文件,哇這位同學(xué)你太有才了,是的,數(shù)據(jù)分析很重要的一個(gè)過程就是,把數(shù)據(jù)清洗成表結(jié)構(gòu),存入數(shù)據(jù)庫,其實(shí)CSV文件是可以直接秒變SQL db文件的.

7.SQLite-Python|主角登場(chǎng)

經(jīng)過前面6個(gè)主題的鋪墊,拋磚引玉了這么久,我們的Python主角也該上場(chǎng)了.我們最最重要的目的就是用Python來讀寫數(shù)據(jù)庫,今天我們先來讀一下.

1).Pip 安裝SQLite3模塊

有很多種方法可以安裝,簡(jiǎn)單的用pip install sqlite3或者pycharm里面安裝一下

2).讀取數(shù)據(jù)庫demo表格

a).sqlite3.connect打開數(shù)據(jù)庫文件

b).獲得游標(biāo)cursor

c).執(zhí)行一個(gè)SQL語句,這里是查詢?nèi)?/p>

d).打印每一行的數(shù)據(jù)

e).不要忘記關(guān)閉游標(biāo)和數(shù)據(jù)庫

結(jié)論:

好了,Python數(shù)據(jù)庫入門篇就先講到這里了,是不是很簡(jiǎn)單,今天很多內(nèi)容沒有展開講,為的就是讓小白用戶能通俗的進(jìn)入數(shù)據(jù)庫的殿堂,后面會(huì)由淺入深的慢慢一層一層講。

數(shù)據(jù)庫其實(shí)沒有想象的那么神秘,那么難的。大家動(dòng)手搭建個(gè)環(huán)境就可以入手了,而且可視化工具雖然很方便,當(dāng)然還是建議大家從命令行入手,這樣對(duì)你系統(tǒng)的了解數(shù)據(jù)庫的操作很有幫助。
數(shù)據(jù)分析之?dāng)?shù)據(jù)庫篇我的項(xiàng)目主要用的是MySQL和Mongodb,這兩者各有千秋,都是我的***,應(yīng)用的場(chǎng)景稍微不一樣,我們后面會(huì)講到的。


網(wǎng)站欄目:零基礎(chǔ)Python數(shù)據(jù)庫怎么學(xué)?大牛帶你揚(yáng)帆起航
文章來源:http://m.5511xx.com/article/cccojod.html