資料庫,在編程中是一個不可缺少的重要元素,也是程式設計師繞不開的一個知識點,學習資料庫知識就變成了一個必須的過程,不然,你的編程知識就不完美。那麼,我們到底對資料庫了解多少呢?除了會用SQL語句去資料庫裡查詢之外,我們是不是還要對資料庫作更進一步的了解呢,今天就和大家分享一下習資料庫的知識,回顧一下資料庫的概念。
什麼是資料庫
資料庫就是數據的倉庫。記得在七八十年代的時候,那時候我們國家每一個地方都會有糧庫,農民要交軍糧給當地的糧庫。糧庫呢,就是專門存放糧食的,我們叫它糧庫。資料庫呢,就是專門存放數據的。所以我們就叫它資料庫。
這個資料庫,他有很多數據類型,相同數據類型的會放在一起,就好比,存放槍枝彈藥的,那叫軍火庫,放糧食的那叫糧庫。再比如我們家裡的房子,客廳就是客廳,廚房房就是廚房,臥室就是臥室,你就不能把吃喝拉撒都放到到臥室裡吧,味道也不好聞呀。
資料庫管理員
DBA是縮寫,它的全稱是DataBase Administraotr,這個DBA就是資料庫管理員。他的角色就好比看守糧倉的老頭,看守糧倉的這個老頭,每天都端祥地坐在倉庫門口,手拎個大茶杯,座在小板登上,旁邊還放著臺收音機。晚上還要巡視四周,像打更一樣,說不定還減著:「天乾物燥,注意火燭」。DBA角色與糧倉的老頭職責是一樣的,但兩者的收入一定是千差萬別的,DBA的收入至少是糧倉老頭的三倍收入還要多。能成為DBA的人都是牛人或者是強人,我們千萬不能小瞧它,DBA需要具備超強的、靈活的思維能力,還要具備超強的定力,毛毛燥燥的人肯定做不了DBA,打個比方,京東的DBA不小心誤刪了幾千條數據,後果是什麼,不言而喻。
操作資料庫
程式設計師,程式設計師在這個資料庫裡又衝當什麼角色呢?程式設計師就是操作資料庫的。
那我們還是舉個例子吧,當用戶想要一個東西,要去倉庫裡拿這個東西,首先你要去拿出一個憑證去找個倉庫老頭,然後才能把這個東西拿出來,拿出來之後才能交給用戶,這裡面拿那個東西的人就是程式設計師。程式設計師充當的角色,就是當用戶提出需要的數據時,程式設計師去資料庫裡把用戶想要的數據拿出來,然後呈現給用戶,使命就完成了。
怎樣數據存儲
先看一看原始人是怎樣存儲數據的,原始人每天打兩隻野兔,打頭野豬的,聽課本上講,他們是用個繩子,系個扣來記錄數據的。
到了古代人又進步了,有了自己的房子,把東西都放到房子裡,不同的房子放不同的物品,弄個50平的房子放鞋,30平的房子放十幾雙襪子。
到了現代,有了計算機之後,人們用硬碟存數據,好多人硬碟裡存了好多土特產,這個土特產可以理解為自己喜歡的東西。能不能用記事本、Excel來存儲數據,能,當然能了。現在好多個人或者小點的公司,用Excel存數據的很多。隨著科技的不斷進步,也有好多人開始用雲存儲數據。比如,百度雲盤,現在存儲數據的方式越來越多也越來越方便了。
數據存儲的特點
1、海量存儲
雖然記事本,excel表格都可以進行存儲數據,但是當產生大量的數據,比如QQ的信息,有上千萬條,甚至近億條個人數據,我們試想一下,如果把它存放在記事本裡或者exceI表格裡,就顯得非常不適合,就算能存放的下,當我們使用時,也覺得這樣存數據會存在問題,試想一下,我做個網站,從記事本來讀取數據,合適嗎,很顯然不合適。
2、數據完整性
當我們存儲數據時,比如存一個人的信息,姓名:老李,性別:公,年齡:1935歲,這樣存數據能正常保存得起來嗎,當然可以,但不符合常理,性別要麼是男,要麼是女,公顯然不符合常人來理解。年齡能活到千歲的肯定不是人,有可能是妖,正常人能活到百歲,就算高壽了。這樣存儲數據我們叫數據存儲不完整性,雖然能正常存儲。
3、數據並發性
數據的並發性,還是用記事本存儲數據舉列子,假如在記事本裡存了一條數據,這條數據內容是:「老張」,這時打開這個記事本,然後再次打開這個記事本,同一個記事本打開了兩次,這時在記事本裡把老張改寫成小張,然後關閉這兩個記事本,這時記事本裡存的是老張還是小張,有可能老張把小張復蓋掉。再比如上廁所,就一個坑,兩個人同時進去,不太雅觀也不適合吧,肯定是第一個人上完,然後再輪到第二個人才好吧。這樣才能保證數據不會被覆蓋。
4、數據安全性
對於存儲數據的安全,這是至關重要的,就像糧倉裡的糧食,誰都可以去取,是不可以的,不然的話,也不會請個老頭天天做在倉庫門口看守著。如果想順利地取得到東西,需要一個憑證或者是領導批的條子,老頭才會允許你進到倉庫裡取東西。這樣才能保證倉庫裡的東西是安全的。
使用資料庫來存儲數據
1、用資料庫來存儲數據可以解決數據的海量存儲問題,別說千條,上千萬條數據都沒有問題,不但數據存儲方便,讀取也很便捷和快速。
2、用資料庫來存儲數據可以解決數據完整性問題,比如年齡上千歲的問題,可以在資料庫裡設置約束來管理數據的不完整性問題,保存的歲數只能是1到150歲。
3、用資料庫來存儲數據可以解決數據並發性問題,資料庫有鎖的機制,就好比上廁所一樣,一個人進去之後,會從裡面把門鎖上,只有這個人出來後,另一個人才能進去。
4、用資料庫來存儲數據可以解決數據安全性問題,要想進到資料庫裡面,是需要用戶名和密碼的,經過驗證才能進入的。
以上就是一個中年程式設計師對資料庫的一些概念的理解,當然由於水平有限,本文中有理解不到或者理解錯誤之處在所難免,敬請讀者批評指正,或者在下方留言評論,有則改之無則加勉。