我不是一個(gè)后臺(tái)開發(fā)者宙帝,對(duì)數(shù)據(jù)庫的認(rèn)知接近空白:僅僅聽說過表、行捌锭、列等概念俘陷,在數(shù)據(jù)庫 GUI 工具下點(diǎn)來點(diǎn)去過,但對(duì)于 SQL 是一無所知观谦。
我這樣的情況在開發(fā)者中大概也不罕見拉盾,但作為互聯(lián)網(wǎng)技術(shù)的基石之一,數(shù)據(jù)庫大概還是每個(gè)從業(yè)人員必須了解的知識(shí)豁状,于是我開始學(xué)習(xí)SQL捉偏。
當(dāng)學(xué)習(xí)一門新技術(shù)時(shí),我總是會(huì)嘗試找到合適的資源:在亞馬遜泻红、豆瓣夭禽、知乎等網(wǎng)站上尋找合適的學(xué)習(xí)材料。
最早入眼的書是《SQL必知必會(huì)(第4版)》谊路,我在多看上購買并閱讀的驻粟。從這本書的名字上看,不太好判斷是什么級(jí)別的書凶异。但如果你查看它的原名蜀撑,Sams Teach Yourself SQL in 10 Minutes,你會(huì)立馬知道剩彬,這是一本你在一無所知時(shí)需要看的書酷麦。這本書真的很簡(jiǎn)單,本來就不長(zhǎng)的篇幅被大量的語句查詢結(jié)果占據(jù)喉恋,閱讀過程談得上輕松:你可以在咖啡廳拿著 iPad沃饶,手指輕滑,一頁一頁地翻閱轻黑,身旁完全不需要一臺(tái)電腦糊肤。
看完《SQL必知必會(huì)(第4版)》后,我了解了基本的 SQL 語句氓鄙,例如 select * from test;
馆揉,但我還未有任何的實(shí)踐經(jīng)驗(yàn),此時(shí)《MySQL與MariaDB學(xué)習(xí)指南》出現(xiàn)在眼前抖拦。
這本書雖然定位也是入門升酣,但難度相對(duì)高一些舷暮。如果說《SQL必知必會(huì)》面向的是因?yàn)楦鞣N原因(如考試、考取資格證等)需要學(xué)習(xí) SQL 的噩茄,那么《MySQL與MariaDB學(xué)習(xí)指南》面向的則是開發(fā)者下面。比如第二章就講述了如何在各個(gè)系統(tǒng)下安裝 MySQL 和 MariaDB。閱讀此書前绩聘,大概還是需要一些 Linux 下的命令行知識(shí)的沥割。
這本書的結(jié)構(gòu)非常清晰,這是一大優(yōu)點(diǎn)凿菩。全書分為五部分驯遇,依次為:軟件、數(shù)據(jù)庫結(jié)構(gòu)蓄髓、數(shù)據(jù)處理基礎(chǔ)叉庐、內(nèi)置函數(shù)、數(shù)據(jù)庫管理会喝。如此清晰明了的目錄陡叠,說明你可以根據(jù)自己的需求,選擇性地閱讀肢执。
比如在實(shí)踐過程中枉阵,我不小心把某個(gè)表刪除了,我于是直接查看「數(shù)據(jù)庫管理部分」的「數(shù)據(jù)庫備份與恢復(fù)」章節(jié)预茄,嘗試進(jìn)行了數(shù)據(jù)恢復(fù)(并沒有成功)兴溜。
貫穿此書的例子是一個(gè)鳥類觀察網(wǎng)站的數(shù)據(jù)庫。這個(gè)例子接近于一個(gè)中小型網(wǎng)站的數(shù)據(jù)庫耻陕,在學(xué)習(xí)過程中談不上輕松拙徽,但這貼合實(shí)際:沒人會(huì)說數(shù)據(jù)庫是簡(jiǎn)單易學(xué)的。
這本書的篇幅也不算長(zhǎng)诗宣,總共才 284 頁膘怕,但信息量很大。我是在電腦上閱讀的召庞,一邊看岛心,一邊在命令行下鍵入例子±鹤疲看完一遍時(shí)忘古,前面的內(nèi)容也已忘記不少。如果平時(shí)不繼續(xù)接觸的話诅诱,大概很快就要忘完髓堪。但如果你迫切需要使用數(shù)據(jù)庫,那么看完本書后,其實(shí)已經(jīng)可以直接使用相應(yīng)的語言來操作數(shù)據(jù)庫了旦袋。后面的知識(shí)大概也需從不停地實(shí)踐中獲取骤菠。