A. 資料庫學習需要什麼基礎
不需要基礎,計算機的學習最大的基礎就是興趣,只要有興趣,許多東西不學就會了。
B. 資料庫設計的基本步驟
資料庫設計的基本步驟
按照規范設計的方法,考慮資料庫及其應用系統開發全過程,將資料庫設計分為以下6個階段
1.需求分析
2.概念結構設計
3.邏輯結構設計
4.物理結構設計
5.資料庫實施
6.資料庫的運行和維護
在資料庫設計過程中,需求分析和概念設計可以獨立於任何資料庫管理系統進行,邏輯設計和物理設計與選用的DAMS密切相關。
1.需求分析階段(常用自頂向下)
進行資料庫設計首先必須准確了解和分析用戶需求(包括數據與處理)。需求分析是整個設計過程的基礎,也是最困難,最耗時的一步。需求分析是否做得充分和准確,決定了在其上構建資料庫大廈的速度與質量。需求分析做的不好,會導致整個資料庫設計返工重做。
需求分析的任務,是通過詳細調查現實世界要處理的對象,充分了解原系統工作概況,明確用戶的各種需求,然後在此基礎上確定新的系統功能,新系統還得充分考慮今後可能的擴充與改變,不僅僅能夠按當前應用需求來設計。
調查的重點是,數據與處理。達到信息要求,處理要求,安全性和完整性要求。
分析方法常用SA(Structured Analysis) 結構化分析方法,SA方法從最上層的系統組織結構入手,採用自頂向下,逐層分解的方式分析系統。
數據流圖表達了數據和處理過程的關系,在SA方法中,處理過程的處理邏輯常常藉助判定表或判定樹來描述。在處理功能逐步分解的同事,系統中的數據也逐級分解,形成若干層次的數據流圖。系統中的數據則藉助數據字典(data dictionary,DD)來描述。數據字典是系統中各類數據描述的集合,數據字典通常包括數據項,數據結構,數據流,數據存儲,和處理過程5個階段。
2.概念結構設計階段(常用自底向上)
概念結構設計是整個資料庫設計的關鍵,它通過對用戶需求進行綜合,歸納與抽象,形成了一個獨立於具體DBMS的概念模型。
設計概念結構通常有四類方法:
自頂向下。即首先定義全局概念結構的框架,再逐步細化。
自底向上。即首先定義各局部應用的概念結構,然後再將他們集成起來,得到全局概念結構。
逐步擴張。首先定義最重要的核心概念結構,然後向外擴張,以滾雪球的方式逐步生成其他的概念結構,直至總體概念結構。
混合策略。即自頂向下和自底向上相結合。
3.邏輯結構設計階段(E-R圖)
邏輯結構設計是將概念結構轉換為某個DBMS所支持的數據模型,並將進行優化。
在這階段,E-R圖顯得異常重要。大家要學會各個實體定義的屬性來畫出總體的E-R圖。
各分E-R圖之間的沖突主要有三類:屬性沖突,命名沖突,和結構沖突。
E-R圖向關系模型的轉換,要解決的問題是如何將實體性和實體間的聯系轉換為關系模式,如何確定這些關系模式的屬性和碼。
4.物理設計階段
物理設計是為邏輯數據結構模型選取一個最適合應用環境的物理結構(包括存儲結構和存取方法)。
首先要對運行的事務詳細分析,獲得選擇物理資料庫設計所需要的參數,其次,要充分了解所用的RDBMS的內部特徵,特別是系統提供的存取方法和存儲結構。
常用的存取方法有三類:1.索引方法,目前主要是B+樹索引方法。2.聚簇方法(Clustering)方法。3.是HASH方法。
5.資料庫實施階段
資料庫實施階段,設計人員運營DBMS提供的資料庫語言(如sql)及其宿主語言,根據邏輯設計和物理設計的結果建立資料庫,編制和調試應用程序,組織數據入庫,並進行試運行。
6.資料庫運行和維護階段
資料庫應用系統經過試運行後,即可投入正式運行,在資料庫系統運行過程中必須不斷地對其進行評價,調整,修改。
C. 資料庫設計的基本步驟
資料庫設計的基本步驟
1、需求分析階段
進行資料庫設計首先必須准確了解與分析用戶需求(包括數據與處理)。需求分析是整個設計過程的基礎,是最困難和最耗費時間的一步。作為「地基」的需求分析是否做得充分與准確,決定了在其上構建資料庫「大廈」的速度與質量。需求分析做的不好,可能會導致整個資料庫設計返工重做。
2、概念結構設計階段
概念結構設計階段是整個資料庫設計的關鍵,它通過對用戶需求進行綜合、歸納與抽象,形成一個獨立於具體資料庫管理系統的概念模型。
3、邏輯結構設計階段
邏輯結構設計是將概念結構轉換為某個資料庫管理系統所支持的數據模型,並對其進行優化。
4、物理設計階段
物理結構設計師為邏輯數據模型選取一個最適合應用環境的物理結構(包括存儲結構和存取方式)。
5、資料庫實施階段
在資料庫實施階段,設計人員運用資料庫管理系統提供資料庫語言及其宿主語言,根據邏輯設計和物理設計的結果建立資料庫,編寫與調試應用程序,組織數據入庫,並進行測試運行。
6、資料庫運行和維護階段
資料庫應用系統經過試運行後即可投入正式運行,在資料庫系統運行過程中必須不斷對其進行評估、調整與修改。
資料庫設計的基本原則
1、一致性原則:對數據來源進行統一、系統的分析與設計,協調好各種數據源,保證數據的一致性和有效性。
2、完整性原則:資料庫的完整性是指數據的正確性和相容性。要防止合法用戶使用資料庫時向資料庫加入不合語義的數據。對輸入到資料庫中的數據要有審核和約束機制。
3、安全性原則:資料庫的安全性是指保護數據,防止非法用戶使用資料庫或合法用戶非法使用資料庫造成數據泄露、更改或破壞。要有認證和授權機制。
4、可伸縮性與可擴展性原則:資料庫結構的設計應充分考慮發展的需要、移植的需要,具有良好的擴展性、伸縮性和適度冗餘。
5、規范化原則:資料庫的設計應遵循規范化理論。規范化的資料庫設計,可以減少資料庫插入、刪除、修改等操作時的異常和錯誤,降低數據冗餘度等。
D. 有推薦的SQL進階書籍或者網站嗎(sql資料庫入門書籍推薦)
前段時間開始自學資料庫,學了一段時間下來,看了好幾本書了,品味一下,有幾本感覺對剛接觸資料庫(甚至是資料庫高手)的兄弟們來說是相當不虛粗錯的所以向大家推薦一下:
一:《資料庫設計與開發》
英文名:databasedesignanddevelopment---avisualapproach
清華大學出版社
一本很實用的書籍,圖文並茂,講解生動,讓你在不知不覺中已經對資料庫的設計產生了興趣,看完本書後,也許你會感嘆,原來資料庫設計還是挺簡單的哦
二:《SQLServer資料庫設計與系統開發教程》
清華大學出版社唐紅亮主編
這本書雖說沒什麼牛逼的頭銜,但是絕對是一本不錯的教材,全書用兩個實際的項目來詮釋SQL的各個知識點,語言通俗,但基本知識點都講得很清楚。作者娓差賀鎮娓道來,一點點的將知識深入進去。很不錯的一種寫法,強烈推薦你看這本書
三:《SQL語言與資料庫操作技術大全》
電子工業出版社馬軍李玉林等編著
這本書我建議大家做SQL語言的字典用,比如要查詢、更改、刪除數據了,卻突然忘了某個子句(如Having子句)的具體用法,這裡面會很准確的告訴你。當然,對於專門學習SQL語言的來說,我覺得這本書也是相當不錯的選擇
四:《SQLServer2005資料庫管理入門經典》
清華大學出版社DanWoodChrisLeiterPaulTurley著馬振晗等譯
對MSSQLServer2005裡面的各種工具、組件的功能做了介紹,本書主要適合管理人員看
說明:雖然我也是一名資料庫新手,但我拍大希望能通過這樣一種方式來幫州我能幫助的人,讓他們在學習的初期就不走彎路,給他們一點實實在在的建議。以後我發現的好書我還會持續的發上來,供大家參考。
E. 資料庫開發需要學什麼
資料庫開發工程師需要學習的課程有:
1、計算機導論
內容提要:為新學生提供一個關於計算機科學與技術學科的入門介紹,使他們對該學科有一個整體的認識,並了解該專業的學生應具有的基本知識和技能以及在該領域工作應有的職業道德與應遵守的法律准則。
2、數字電路與數字邏輯
內容提要:介紹數字邏輯與數字系統的基本概念、分析方法和設計原理,包括開關理論基礎、組合邏輯、時序邏輯、可編程邏輯器件、數字系統等。
3、計算機組成原理與匯編語言
內容提要:以馮諾依曼計算機模型為出發點,介紹計算機的組織結構和工作原理,剖析計算機的運算器、存儲器、控制器和輸入輸出設備的結構、工作原理和相互關系;介紹80X86指令系統、匯編語言與匯編指令、匯編程序與匯編過程、簡單匯編程序設計、匯編語言與高級語言的介面、宏匯編等。
4、計算機網路
內容提要:介紹數據通信的基本概念和計算機網路的基本原理,包括計算機網路的體系結構、數據通信的基本方法和協議、計算機網路的主要應用協議;同時介紹計算機網路系統的安全和管理知識,使學生對數據通信和計算機網路有一個全面理解。
5、計算機體系結構
內容提要:研究計算機系統結構的基本概念、基本原理、基本結構和基本分析方法,使同學在具有一定的軟硬體知識基礎上能綜合認識計算機系統余襲的軟硬體功能分配與各種不同結構類型機器的特性和性能評價方法。為研究、開發、應用高級計算機系統打下基礎。確立全面、系統的觀點和學會定量分析問題的方法。
6、離散數學
內容提要:包括集合論、數理邏輯、圖論、組合數學等內容,形式化的數學證明貫穿此課程。
7、高級程序設計語言
內容提要:分別以C、C#或JAVA為例,介紹程序設計和語言,程序的基本數據結構、類型定義、簡單類型和結構化類型、程序的基本控制結構、結構化程序設計、面向對象的程序設計等。
8、演算法分析與設計
內容提要:本課程延續數據結構課程的學習,從演算法分析和設計的角度出發,除去傳統的分類查找演算法和一般的設計方法外,主要內容包括如下幾個部分:演算法研究的理論基礎,遞歸分析技術,基本演算法設計策略(幾類經典演算法學習),多項式運算與FFT,串匹配,概率分析演算法橘毀昌。希望通過這一課程的學習,使學生能對現代的演算法設計及分析的基本工具能有較全面的掌握。
9、數據結構
內容提要:介紹線性表及其鏈接存儲結構與演算法、數組與矩陣、堆棧與隊列、廣義表的存儲結構與多元多項式表示、串與文本編輯、排序、樹、圖、文件結構。
10、資料庫系統原理
內容提要:介紹資料庫系統的基本概念、原理、方法及應用,主要包括資料庫系統概論、資料庫管理系統實現技術、資料庫存儲結構及其他類型的資料庫系統。
11、編譯技術
內容提要:介紹編譯原理的理論和實踐,包括編譯程序設計、詞法分析、語法分析、符號表、聲明和存儲管理、代碼生成以及優化技術。
12、操作系統
內容提要:介紹操作系統的設計與實現,包括操作系統各組成部分的概述、互斥性和同步性、處理器實現、調度演算法、存儲演算法、設備管理和文件系統。
資料庫開發工程師是指設計、開發、維護管理大型資料庫的專業人才。
第一類是MySQL,以自由軟體為主,以社團式開發為代表。版本選擇4.0,側重於在Linux平台(RedHat8.0)。MySQL資料庫短小精悍,速度比較快,它是自由軟體產品,現在美國國家航天局的資料庫系統就是MySQL。在很多中小型的ICP有著廣泛的應用。
第二類是SQLServer2000,中小型企業資料庫,界面友好,可操作性強,在資料庫市場佔有很大的份量,SQLServer2000是圓扒企業產品的代表,定位資料庫中低端市場。
第三類是Oracle9i,中大型企業資料庫,跨平台,在資料庫中高市場佔有很大的份量,Oracle9i介紹主要是Windows2000平台和Linux平台(RedHat8.0)。Oracle9i在金融、電信、銀行有很多經典應用。
資料庫開發需要學習數據結構與演算法,操作系統程序,語言開發,資料庫知識,基礎知識,SQL語言數據流程,設置資料庫系統的運行和管理。光寫資料庫開發還不行,還得要搭配一門開發語言,只有開發語言了,結合資料庫開發才是一個合格的程序員。開發語言建議你學Java或者是PhP。
F. 資料庫設計的基本步驟
資料庫設計的來基本步驟如源下:
1、安裝並打開MySQL WorkBench軟體以後,在軟體的左側邊欄有三個選項,分別是對應「連接資料庫」、「設計資料庫」、「遷移資料庫」的功能。這類選擇第二項,設計資料庫,點擊右邊的「+」號,創建models。