關係數據庫學結

四年級的奧數課全部結束了,各自剩下一次考試。考試只是檢測,不代表學習,學習的過程可以做個總結了。

關係數據庫學結

其實國小奧數,三四五年級這三年是主要學習時間,而且這三年的知識都是模塊化學習的,經過反覆,螺旋式的上升和提高,最後在各個模塊之間建立起聯繫,融會貫通。

很多人說學了奧數長大了也就忘了,到國中以後沒什麼幫助,其實根本原因還是沒學到‘融會貫通’這一步。數學如果只是作爲一種知識,而不是一種思想存在在身體裏面,遲早也會忘掉。只有那些最本質的東西,那些思想,那些哲學觀點,留下來,纔會終生受益。

還是那句話,沒有輕而易舉的學習過程。天分再高,也要經過磨礪的過程;天分再低,只要付出,必定有收穫。

言歸正傳說說天一這一年的學習。

前天上課發了複習卷子,h老師拿來考試,全班成績都不高,天一相對更不高。客觀原因不說了,我昨天晚上和他又過了一遍那個複習資料,總結出來幾點:

第一,如果不和別人比,總體的掌握情況還是過得去的。這個過得去表現在兩方面,一方面他現在的掌握情況正常考試肯定能夠及格,另一方面他對知識的掌握程度已經絕對不會影響到下一步的學習。這是值得高興,也值得鼓勵孩子的地方。畢竟掌握到近乎完美,考試分數很高,只是少數孩子才能做到,大部分能夠這樣也該滿意了。

第二,試卷上的題目,過程寫的還不錯,每一道題都有解題過程,幾何題都有輔助線的畫法說明,說得比較清楚。說明寫過程寫步驟已經在他身上開始成爲一種習慣,對於不是非常複雜的過程,也能夠大體掌握。

上面兩條都是優點哈!

第三,粗心時時有。這一次因爲時間緊張,更是鬧出了寫到最後一步忘了寫答案,少寫一個數字之類的笑話。這也說明他專注度還不夠,做題的準確度速度都有提升空間。但是與其非要強迫他馬上提高,我更希望隨着他年齡的增長,逐步培養,這樣不太破壞孩子的天性,雖然對小升中可能有壞處,但是長遠也許有好處。也就是說我打算在繼續容忍他的粗心錯誤一段時間,只要他自己慢慢在進步就可以。

第四,學了高級方法,還用簡單方法解題,費時費力。因爲簡單方法,比如枚舉,更適合孩子的思路,但是現在這個階段,肯定不是重點考察這方面的能力。計數題用枚舉,不但費時,答案也基本不靠譜。但是這說明孩子的思維能力提升,需要一個過程,有人快有人慢。那些更簡單更本質的思路,纔是真正屬於他們的東西。孩子都是樸素的哲學家,有些過於複雜的方法其實妨礙了他們對於世界的最最簡單原始的看法。能夠學了新知識,又保留原來的孩子的天性不變,真的很難!

第五,遺忘是學習的敵人。儘管平時的做題量也算是過得去,還是有些知識點遺忘了。稍微複習一下,就能想起來,但是不復習完全沒有思路。奧數學習,本來就是超過一個孩子的能力的訓練,這種高水平的思維訓練,必須溫故而知新。大量練習之後,才能把思維能力提升一個高度。天才和普通娃的差別就在於天才不用練習。

四年級課程結束,其實國小奧數的面就算是全部鋪開了。看看五年級的講義,新知識點已經很少,更多的是在原有知識上提升難度。奧數學習其實也是個點和麪的平衡關係。如果大面積的知識掌握不了,那說明現在所學習的東西應該是難度過大了。這個面的知識掌握平均水平,其實就是考試競賽中反映出來的分數。假設最高難度爲100分,那麼80分就在80分的水平面上,60分就在60分的水平面上。

面是由點構成的,面的位置確定了,其中未必每個點都各自剛好在這個面上,有的或許高些,有的低些。提升整個面的位置很難,特別是要先把最低點給補上來才行。孩子的特點不一樣,天一有些知識對他來說很容易理解掌握,有些就很難。現在的重點還是要把有缺陷的知識點補起來。

我的感覺是,孩子能到什麼水平,基本上是由天分和家長孩子願意付出的努力決定的。要大幅度提高水平,總而言之除非發生了‘突然開竅’這一類的情況,可能性很小。莫不如把孩子思維上的短板補一補,讓他能夠把自己的水平發揮出來。這也就算是夠好的了!

關係數據庫學結 [篇2]

這學期學習了數據庫原理,我從中學到了很多,增長了許多計算機方面知識,開闊了眼界與思路。我本來就是個計算機技術愛好者,在此門課程開設之前,爲了今年4月份的計算機三級數據庫等級考試,我已經把數據庫技術那本書看完了,自學固然有些難度,有好多知識雖然記住了,可以應對考試,並最終在考試中取得了好的成績,但事實上有些知識仍是一知半解的。帶着疑問和一顆有極強求知慾的心,投入了你的課程中。當然對於此門課程的學習,我始終保持高度興趣。通過你的教授,我又重新認識了數據庫。

數據庫技術產生於六十年代末,是數據管理的最新技術,是計算機科學的重要分支,是信息系統的核心和基礎,它的出現極大地促進了計算機應用向各行各業的滲透,數據庫的建設規模、數據庫信息量的大小和使用頻度已成爲衡量一個國-家-信-息化程度的重要標誌。數據庫技術如此重要,更堅定了我學習的信心。下面將我所學的主要知識簡單介紹如下:

共分四大塊:數據庫基本原理部分、sql,即結構化查詢語言、數據庫設計、數據庫安全和完整性控制。

一、數據庫基本原理

數據庫技術是應數據管理任務的需要而產生的。數據管理經歷了三個階段:人工管理階段、文件管理階段、數據庫系統階段。數據庫系統與其他兩個系統比,有許多優點:1)數據結構化 ;2)數據的共享性高,冗餘度低,易擴充;3) 數據獨立性高;4)數據dbms統一管理和控制。目前,數據庫已經成爲現在信息系統的重要組成部分。據有數百g、數百t、甚至數百p子節的數據庫已經普遍存在於科學技術、工業、農業、商業服務業和政府部門的信息系統中。

數據庫技術是計算機領域中發展最快的技術之一。數據庫技術的發展是沿着數據模型的中線展開的。現有的數據庫系統均是基於某種數據模型的。數據模型是數據庫系統的核心和基礎。數據模型,通俗的講,即爲現實世界的模擬。數據模型的組成要素爲:數據結構、數據操作、數據的完整性約束條件。常用的數據模型有層次模型、網狀模型、關係模型、面向對象模型、對象關係模型。其中關係模型是目前最重要的一種數據模型。關係數據庫系統採用的就是關係數據模型作爲數據的組織方式。關係數據庫是我們掌握的重點。

關係數據庫系統是支持關係模型的數據庫系統。要想深入瞭解關係數據庫系統首先要了解關係模型。關係模型由關係結構、關係操作集合和關係完整性約束3部分組成。關係模型的數據結構非常簡單,只包含單一的數據結構——關係。在用戶看來,關係模型的中的數據的邏輯結構是一張扁平的二維表。關係模型的數據結構雖然簡單但卻能表達豐富的語義,描述出現實世界的實體以及實體之間的聯繫。

關係模型是建立在集合代數的基礎上的。關係數據庫中,關係模式是型,關係是值。關係模式是對關係的描述。關係數據庫也有型與值之分。關係數據庫的型也成關係數據庫模式,是對關係數據庫的描述。關係數據庫的值是這些關係模式在某一時刻對應的關係的集合,通常就稱爲關係數據庫。

關係模型給出了關係操作的`能力的說明,但不對rdbms語言給出具體的語法要求。關係模型中常用的關係操作包括查詢操作和插入、刪除、修改操作兩大部分。關係的查詢表達能力很強,是關係操作中最主要的部分。查詢又分爲:選擇、投影、連接、除、並、差、交、笛卡爾積等。其中選擇、投影、並、差、笛卡爾積是基本的操作。關係操作的特點實際和操作方式,即操作的對象和結果都是集合。這種操作方式也成爲一次以集合的方式。

關係的完整性約束有三個:實體完整性、參照完整性和用戶自定義完整性。其中實體完整性和參照完整性是關係模型必須滿足的完整性約束條件,被稱作是關係的兩個不變形,應該由關係系統自動支持。用戶完整性適應用戶需要遵循的約束條件,體現了具體領域的語義約束。

二、sql標準語言

sql(structured query language),即結構化查詢語言,是關係數據庫的標準語言。1986年10美國國家標準局的數據庫委員會x3h2批准了sql作爲關係數據庫語言的美國標準。1987年國際標準化組織也通過了這一標準。sql標準從1986年公佈以來隨着數據庫技術的發展不斷髮展,不斷豐富。

sql 功 能 動 詞

數 據 定 義 create,drop,alter

數 據 查 詢 select

數 據 操 縱 insert,update ,delete

數 據 控 制 grant,revoke

sql之所以能夠爲用戶和業界所接受,併成爲國際標準,是因爲它是一個綜合的、功能極強同時又簡潔易學的語言。sql集數據查詢、數據操縱、數據定義和數據控制功能於一體。有如下特點:1)綜合統一;2)高度過程化;3)面向集合的操作方式;4)以同一種語法結構提供多種使用方式;5)語言簡潔,易學易用。sql接近英語口語,因此容易學習,容易使用。

sql的數據定義語句

操 作 對 象 操 作 方 式

創 建 刪 除 修 改

表 create table drop table alter table

視 圖 create view drop view

索 引 create index drop index

數據庫查詢是數據庫的核心操作。也是數據庫學習的重點和難點。sql提供了select語句進行數據庫的查詢,該語句具有靈活的使用方式和豐富的功能。其一般格式爲:

select [all|distinct] <目標列表達式>

[,<目標列表達式>] …

from <表名或視圖名>[, <表名或視圖名> ] …

[ where <條件表達式> ]

[ group by <列名1> [ having <條件表達式> ] ]

[ order by <列名2> [ asc|desc ] ];

select語句既可以完成簡單的單表查詢,也可以完成複雜的連接查詢和嵌套查詢。

(一)、單表查詢

1、選擇表中的若干列:

2、選擇表中的若干元組;

2)查詢滿足條件的元組。where子句常用的查詢條件有

3、order by子句。

4、聚集函數。

5、order by子句

(二)、連接查詢

1、等值與非等值連接查詢;2、自然連接;3、外連接;4、複合條件連接。

(三)、嵌套查詢

1、帶有in謂語的子查詢;2、帶有比較運算符的子查詢;3、帶有any(some)或all謂語的子查詢;4、帶有exists謂詞的子查詢。

(四)、集合查詢。

數據的更新操作由三種:向表中添加若干行數據、修改表中的數據和刪除表中的若干行數據。

三、數據庫設計

數據庫設計是指對於一個給定的應用環境,構造最優的數據庫模式,建立數據庫及其應用系統,使之能夠有效地存儲數據,滿足各種用戶的應用需求(信息要求和處理要求

在數據庫領域內,常常把使用數據庫的各類系統統稱爲數據庫應用系統。數據庫是信息系統的核心和基礎把信息系統中大量的數據按一定的模型組織起來。提供存儲、維護、檢索數據的功能使信息系統可以方便、及時、準確地從數據庫中獲得所需的信息數據庫是信息系統的各個部分能否緊密地結合在一起以及如何結合的關鍵所在。數據庫設計是信息系統開發和建設的重要組成部分。

數據庫設計的特點:

1. 數據庫設計應該與應用系統設計相結合數據庫建設是硬件、軟件和幹件的結合:

1)三分技術,七分管理,十二分基礎數據;2)技術與管理的界面稱之爲“幹件”.

2. 數據庫設計應該與應用系統設計相結合:

1)結構(數據)設計:設計數據庫框架或數據庫結構

2)行爲(處理)設計:設計應用程序、事務處理等

3.結構和行爲分離的設計

1)傳統的軟件工程忽視對應用中數據語義的分析和抽象,只要有可能就儘量推遲數據結構設計的決策

2)早期的數據庫設計致力於數據模型和建模方法研究,忽視了對行爲的設計

數據庫設計方法簡述:

1. 手工試湊法

2. 規範設計法

基本思想 :過程迭代和逐步求精規範設計法

典型方法有:新奧爾良(new orleans)方法( 將數據庫設計分爲四個階段);方法(將數據庫設計分爲五個步驟);er方法(把數據庫設計當成一步接一步的過程)。

3.計算機輔助設計:

oracle designer 2000和sybase powerdesigner.

數據庫設計的基本步驟:

1、數據庫設計的準備工作;2、數據庫設計的過程(六個階段): 1)需求分析階段;2)概念結構設計階段;3)邏輯結構設計階段;4)數據庫物理設計階段;5)數據庫實施階段;6)數據庫運行和維護階段.

設計一個完善的數據庫應用系統往往是上述六個階段的不斷反覆。

四、數據庫安全和完整性控制

數據庫的一大特點是數據可以共享,但數據共享必然帶來數據庫的安全性問題.數據庫系統的安全保護措施是否有效是數據庫系統主要的性能指標之一.

數據庫的安全性是指保護數據庫,防止因用戶非法使用數據庫造成數據泄露、更改或破壞。課本中講述了三類計算機系統安全性問題:技術安全類、管理安全類和政策法律類。如何控制數據庫的安全性?其常用的方法有:1)用戶標識和鑑定2)存取控制;3)視圖;4)審計;5)密碼存儲.

數據庫的完整性:即數據的正確性和相容性防止不合語義的數據進入數據庫。

例: 學生的年齡必須是整數,取值範圍爲14--29;學生的性別只能是男或女;學生的學號一定是唯一的; 學生所在的系必須是學校開設的系;

一個完善的完整性控制機制應該允許用戶定義各類完整性約束條件。dbms的完整性控制機制有:1. 定義功能2. 檢查功能3. 違約反應。

完整性規則用五元組表示:(d,o,a,c,p):d(data) 約束作用的數據對象;o(operation)觸發完整性檢查的數據庫操作:一是當用戶發出什麼操作請求時需要檢查該完整性規則;二是立即檢查還是延遲檢查;a(assertion) 數據對象必須滿足的斷言或語義約束這是規則的主體; c(condition) 選擇a作用的數據對象值的謂詞; p(procedure) 違反完整性規則時觸發的過程。

通過本課學習令我感受深的是,在我自己看書的時候關於數據庫規範化理論(1nf、2nf等)那一塊自己怎麼看也記不住,主要原因是自己理解不了,只能靠死記,故有些困難。減小關係模式因規範化程度過低帶來的數據冗餘,克服修改、刪除的異常,“模式分解”是規範化的實現途徑,但數據庫設計實踐中不能過分追求規範化程度。還有就是數據庫設計過程,對於模型的轉化理論也很難理解,通過您的講解很容易就理解了,而且明白如何去做了。

以上是我對數據庫重點知識的理解,通過學習本課程和做實驗.我學會了如何來設計數據庫,如何利用SQL語言來定義或進行相關查詢.我感覺學到的不僅是知識本身,而且學到了一種技能和方法。

關係數據庫學結 [篇3]

在java數據庫開發中,常常會提到數據持久層這一概念,在javaee的三層結構是表示層、業務邏輯層、數據持久層,即通常說的mvc模式。數據持久層的主要任務是負責數據的存儲,數據庫持久層就是mvc的m層也就是model層。

1.數據持久層的含義

數據持久層是位於業務邏輯層和數據庫之間,用於存儲數據的一個模塊。把數據持久層單獨作爲j2ee體系的一個層提出來的原因就是能夠在對象-關係數據庫之間提供一個成功的企業級映射解決方案,盡最大可能彌補這兩種範例之間的差異,其目的是通過持久層的框架將數據庫存儲從服務層中分離出來是,持久層框架有兩種方向:直接自己編寫jdbc等sql語句(如ibatis);使用o/rmapping技術實現的hibernate和jdo技術;當然還有javabean中的實體bean技術。

2.數據持久層設計

數據持久層的設計目標是爲整個項目提供一個高層、統一、安全和併發的數據持久機制。完成對各種數據進行持久化的編程工作,併爲系統業務邏輯層提供服務。合理的數據持久層和設計能夠簡化數據增、刪、改、查等功能的開發過程,同時又不喪失多層結構的天然優勢,繼承延續j2ee特有的可伸縮性和可擴展性。o/r映射是數據持久層設計的主要課題,o/r映射是object/relation映射,是對象和關係型數據庫表之間的映射。數據持久層框架的出現,大大完善了數據持久層的設計。

3.數據持久層框架

數據持久層框架是爲了解決持久層設計而出現的,javaee開發中的持久層框架有很多,目前做的最好的還是hibernate框架,它是一個完全自動化的持久層框架。hibernate框架是一個開源的數據持久層框架。hibernate是一種orm框架,全稱object-r保存修改elativedatabase-mapping,在java對象與關係數據庫之間建立某種映射,以實現直接存取java對象(一般爲pojo或者vo)。orm框架是不同於mvc的另一種思想的框架,使用範圍也與mvc截然不同。關於hibernate會在後面的章節中做詳細介紹。

關係數據庫學結 [篇4]

通過學習這門課,我們三個實現了一系列項目功能。我們第一次通過大家的努力完成這個項目,充分體現了我們的團隊精神。通過這個項目我們學到了很多,並把這些東西付諸實踐,從而獲得成功。當然,雖然我們的項目有很多缺陷,比如屏幕效果不夠成熟,功能不夠多樣,實際操作時安全性問題,這就需要我們不斷一步一步改進,去維護,一個成功的項目是任重而道遠的,這是我們的第一步,我們將堅定地走第二步,第三步,我們將會越走越好。

大二選修了數據庫,聽學長學姐們說,這門課很難,我們心裏都很忐忑。

但是學期末再來看,我們對於這門課的學習有了進一步的認識。老師講課很認真,雙語教學讓我們在翻譯英文的基礎上,充分理解其中的含義。對於重點難點老師總是很有耐心的一遍遍重複講解,配合着圖解和ppt,直到講透徹我們都聽懂爲止。從數據結構到數據庫一直選王老師的課,很喜歡王老師講課的風格,老師講的很耐心,每每講到重點或是難點都會確定我們是否明白。老師總是能把知識點講的我們易懂。

期末的大作業,就是三人一組的項目,讓我們理論聯繫實踐,自己學習課外知識,培養團隊精神。這對我們是一個很好的機會,來解決不懂的理論問題,對所學知識靈活運用。覺得這個大項目比較鍛鍊我們的能力,讓我們能學有所用。

關靜