為什么數據庫使用SQL語言?
網友解答: 一直以來,數據的持久化都是依賴于文件存儲,包括windows的excel,word,txt等,數據庫也是使用的文件,比如oracle的.DBF;Access的.mdb都是使用
一直以來,數據的持久化都是依賴于文件存儲,包括windows的excel,word,txt等,數據庫也是使用的文件,比如oracle的.DBF;Access的.mdb都是使用的文件。
既然是文件,我們知道計算機只識別0,1兩個機器碼,其實文件就都是一系列的二進制編碼,不同的文件使用不同的方式打開,比如在windows上強制使用文本方式打開dbf文件會顯示一堆亂碼,因為很多東西它不識別。
SQL就是用來對數據庫文件進行增刪改查的語言,數據庫誕生伊始,就是為了解決結構化的數據存儲,相對應的就需要一門結構化的語言來操作它。
SQL,英文為Structured Query Language,翻譯為結構化查詢語言,可以方便的訪問和處理數據庫,是ANSI標準的一門計算機語言,既然只是一門語言,那就不是不可以取代的,只要使用同樣的操作標準,比如使用JAVA完全可以讀出文件中的內容,進行顯示和修改,但是這種重復造輪子的事情應該沒人會做,首先需要掌握數據庫存儲標準,然后操作數據庫,有著極強的復雜性不說,性能估計也比SQL差,畢竟SQL本就是伴隨著數據庫的發(fā)展誕生的一門操作語言!
SQL提供了create;drop;alter;insert;select;update;delete等標準指令用于操作數據庫,實現結構化數據模型創(chuàng)建,結構化數據存儲和查詢的功能!
回到問題的描述,為什么不用對象數組取代數據庫?首先你要想清楚,這些對象數組需不需要持久化?需要持久化必然是要放在硬盤的文件中的,需不需要有關系?不管是關系型數據庫,可以針對關系型數據進行方便的存儲!
如果你的對象數組只在內存里面用,數據庫自然是不需要的,如果你是要持久化,而且是關系型數據持久化,那么只能是數據庫了!
綜上,你完全可以使用其他語言(JAVA,C等)實現數據庫文件的增刪改,但是為了方便,性能,還是老老實實使用SQL吧,更多的技術分享,敬請關注。。。
網友解答:數據量很少的時候,用變量存數據。
數據量大或很大,比如幾十幾百幾千幾萬或更多,必須用數據庫來存。
數據庫是專門用來解決數據存儲的,它能在計算機技術行業(yè)擁有無可撼動的地位,初學者要理解原因??梢赃@么說,沒有數據庫技術,谷歌百度騰訊阿里等等所有互聯網公司全都存在不了,互聯網也不會有,甚至程控交換機、手機的打電話短信功能都沒辦法用,都得有接話員來負責電話的連線。
數據庫是必然要有的,因為它解決了數據存儲的問題。
但數據庫技術有多種,最常用的是關系數據庫,這就是大學必然學的課程。
關系數據庫很使用方便,通用性很好。
MSSQL2000/2005/2008/2012、甲骨文、MySQL等是關系數據庫的經典代表。
關系數據庫的弱點是:關系數據庫每張表的數據量超過100萬條后數據庫操作速度就開始變慢不利于數據讀取的效率,會導致網頁打開很慢。解決辦法有多種:分表分庫、網頁靜態(tài)化、使用緩存等等。
因為關系數據庫的這個弱點,對于擁有海量數據的公司,如阿里、百度、谷歌等公司用到的并不是關系數據庫,是一種稱為bigtable的數據庫,只是各公司的實現各不相同,屬于公司不公開的技術核心。
我先說這么多,手機打字真慢~~
歡迎朋友們指正和補充。
補充:
今天看,發(fā)現當時沒有說為啥用SQL語言,不好意思。
SQL語言,又叫結構化查詢語言,是伴隨數據庫而產生和存在的一種特有語言,也是一種業(yè)界規(guī)范語言,用它向數據庫系統(tǒng)發(fā)出數據查詢命令,數據庫系統(tǒng)分根據該命令完成對應的工作,用戶不了解數據庫是如何工作的,只需關注命令結果即可。這樣,用戶就可以將主要的精力放在業(yè)務邏輯的編程上,而不用考慮數據庫的內在編程上。就像你乘火車,車咋開,有鐵路系統(tǒng)負責,而你只需購買一張車票。而各種車票就是SQL。
總體說來,數據庫是為了解決大數據存儲和快速訪問的問題的,SQL是為結解決與數據庫溝通問題的。
SQL是一種規(guī)范語言,各種數據庫系統(tǒng)都是按照這個規(guī)范而實現的。
所以,市場需要數據庫,也就需要SQL。