{eval=Array;=+count(Array);}
自學SQL數(shù)據(jù)庫,說難也不難,主要做好以下幾點:
目前流行的數(shù)據(jù)庫環(huán)境,主要包括MySQL、Oracle、SQLServer、PostgreSQL、SQLite等。這幾個都屬于經(jīng)典的傳統(tǒng)關(guān)系型數(shù)據(jù)庫,對ANSI-SQL的支持都不錯。個人建議最好選擇開源數(shù)據(jù)庫系統(tǒng)。
Oracle、SQLServer都屬于商業(yè)數(shù)據(jù)庫,死貴死貴的,MySQL自從被Oracle收購后,其前景堪憂,很可能跟Java的下場一樣,SQLite太小型,對上SQL的支持很有限。本人建議最好選擇PostgreSQL。
我不是亂說的,PostgreSQL號稱“全世界最強大的開源數(shù)據(jù)庫”,這名號絕對不是蓋的,真材實料。雖然國內(nèi)MySQL的流行程序要高于PostgreSQL,但要看未來。美國的尿性我們都知道,連Android都要搞事情,MySQL以后我們能不能用都是問題。
最重要的,PostgreSQL不但功能強大不弱于大型商業(yè)數(shù)據(jù)庫、而且完全開源不需要任何商業(yè)授權(quán),她屬于全世界,而不是美帝,大膽的學、大膽的用,沒有任何后顧之憂。要學就學最有前途的。
俗話說,學以致用,如果您的學習沒有任何場景,那就是無的放矢,學起來不但累而且沒有成就感。干巴巴的語法雖然看上去很簡單,但您不清楚學來干什么,還會有深入學習的興趣么?就算您硬著頭皮死啃,沒有成就感您能堅持多久?
所以,您必須有一個完整的應(yīng)用場景,您學習的目的,就是圍繞這個應(yīng)用場景展開。當然,應(yīng)用場景不是天生就有的,如果您為了工作,可能場景已經(jīng)被事先設(shè)置好了;如果您只是為了學習,就需要創(chuàng)建一個應(yīng)用場景。當然不能隨便創(chuàng)建場景,您要以自己很熟悉的領(lǐng)域作為應(yīng)用場景。比如學校的學籍管理、公司的人事管理等等。
有了應(yīng)用場景,您就可以圍繞應(yīng)用場景展開數(shù)據(jù)庫設(shè)計、表結(jié)構(gòu)設(shè)計、關(guān)聯(lián)設(shè)計、存儲過程設(shè)計等等。各種應(yīng)用能夠?qū)崿F(xiàn)可以衡量的結(jié)果,您學起來就來了興趣。完成應(yīng)用場景需求的過程中,各種SQL語法您很自然就用到和掌握了。
如果您是程序開發(fā)人員,最好與您的開發(fā)環(huán)境融合起來,通過編程實現(xiàn)程序前端、數(shù)據(jù)庫作為后臺,各種應(yīng)用效果就更直觀,學起來興趣就越來越濃。說不準學習的過程還能做出來一個不錯的系統(tǒng),何嘗不是意外的收獲啊。
SQL和數(shù)據(jù)庫有很多實用技巧,您學的越多、學的越久,就會有越多的問題和困惑。有些問題解決起來得心應(yīng)手、而有些問題卻總讓您頭疼。頭疼不是您水平低,很可能是因為您平時沒有話費足夠的時間研究SQL和數(shù)據(jù)庫。
自學往往沒有足夠的時間系統(tǒng)學習,這沒辦法,但您可以做好筆記,把各種處理的經(jīng)典方案SQL腳本留存起來,以后使用的時候,可以隨時查閱。但如果您任何處理都要不停的查找解決方案,那您的學習就太失敗了。
我們總會碰到各種奇葩需求,之所以奇葩,主要是我們沒處理該類需求的經(jīng)驗、或者我們的知識存在各種斷層,要讓自己有足夠的底氣,您只有考多積累,日積月累多思考多試驗,崩總想著自己是高手能搞定一切,該查資料就查,查了之后做好筆記記錄,爭取下次就會處理了,時間長了,無形中您就成了高手了。
這里就推薦一些我學習數(shù)據(jù)庫時候用到的。
想學sql,先學數(shù)據(jù)庫,知識理論真的很重要,別跟我說什么上手操作,不夠扎實,我以前寫sql也很厲害,就是靠這個方法。
第一周:方法論的學習
方法論來自于電子書《SQL基礎(chǔ)教程》(作者:Mick)第一章--第七章
該書非常適合初學者,通過實例的形式由淺入深的講解了SQL常用語法
學習節(jié)奏:每天一個章節(jié),第二天復(fù)習一遍第一章節(jié)的內(nèi)容后再進行新章節(jié)的學習(以理解為主,切記死記硬背SQL語法)
第二周:練習
習題來源:SELECT basics - SQLZO,結(jié)合SQL常用語法,對部分習題進行解析,相信我,這習題反復(fù)地做,你就是從入門到進階的水平。
如果你想再上一步,那就找個工作試試吧,先從簡單的做起。
對于數(shù)據(jù)庫的知識點,如果有的時候不夠理解,可以去網(wǎng)上找一些教程性的網(wǎng)站看一看,應(yīng)該比單純看書會有趣一點。不枯燥的學習才能讓人有持續(xù)性的動力。
可以從SQL數(shù)據(jù)庫的原理先看一看,然后試著自己實現(xiàn)一個。
沒錯,自己實現(xiàn)一個。然后你體會到一個數(shù)據(jù)庫需要解決存儲,查詢,事務(wù),鎖,錯誤恢復(fù)等等數(shù)據(jù)庫需要解決的問題,從而不但與前人的經(jīng)驗靠攏。提高自己的知識。
學SQL還是要多讀多寫
讀,是指要有一套學習輔導書籍或視頻教程,我覺得至少要先知道SQL 是做什么的,能夠解決什么問題,才是該如何學好。
網(wǎng)上的輔導書籍和視頻教程很多,這里推薦我看過的一些比較好的書籍和視頻教程
書籍類:
《SQL基礎(chǔ)教程》
《SQL必知必會》
這兩本應(yīng)該是寫的比較通俗易懂的書籍了,此外一些數(shù)據(jù)庫的安裝,操作可以網(wǎng)上搜索一下相關(guān)的圖文教程,基本上只要你的關(guān)鍵字正確,都可以找到你想要的內(nèi)容。
視頻類
視頻類的教程一般網(wǎng)上也有,但是質(zhì)量參差不齊,有興趣的可以關(guān)注我們的公眾號(SQL數(shù)據(jù)庫開發(fā))獲取我收藏的一些較好的視頻教程。
說完讀,下面就是寫了
上面這些資料都是為我們寫SQL語句作的準備,但是真正要學會SQL 還是要多動手動腦。
SQL 終歸還是一門語言,有它固定的語法,這些語法就需要我們?nèi)ビ涀?。如何記住呢?那就是不停的練習寫SQL 代碼,并且用SQL 代碼解決一些問題,比如每學完一個知識點就去做一道題,這樣效果會很好。
此外,凡事都有個過程,學習也不例外,學SQL 如果只是學個皮毛,一周時間就夠了。但是真正去解決問題你就會發(fā)現(xiàn)無從下手,所以還是要多月多練,并且要養(yǎng)成做筆記的習慣,不會的內(nèi)容一定要弄懂才進行下一步。
不管是學SQL ,還是學其他東西,我相信方法都類似,只是看你是否堅持下去了。
找一套視頻學習一下,
推薦【01-數(shù)據(jù)庫基礎(chǔ) - 今日頭條】https://m.toutiao.com/is/eVVhdan/
這套視頻,點擊進去應(yīng)該可以看到合集
最基本的數(shù)據(jù)操作,復(fù)雜查詢,存儲過程,觸發(fā)器,視圖,事務(wù)等等都有
0
回答2
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答