信息技術(shù)和軟件工程_第1頁(yè)
信息技術(shù)和軟件工程_第2頁(yè)
信息技術(shù)和軟件工程_第3頁(yè)
信息技術(shù)和軟件工程_第4頁(yè)
信息技術(shù)和軟件工程_第5頁(yè)
已閱讀5頁(yè),還剩105頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Grundlagen

derInformationstechnikProf.

Dr.-Ing

Bin

Shen同濟(jì)大學(xué)CDHK機(jī)械工程系技術(shù)基礎(chǔ)Grundlagen

derInformationstechnik同濟(jì)大學(xué)中德學(xué)院沈斌教授、博士博士生導(dǎo)師Grundlagen

derInformationstechnikProf.

Dr.-Ing

Bin

ShenInhalt同濟(jì)大學(xué)CDHK機(jī)械工程系(Inhalt)Einführung

引言Datenbank

System數(shù)據(jù)庫(kù)系統(tǒng)Relational

Datebase

System關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)Open

DataBase

Connectivity開放數(shù)據(jù)庫(kù)互連Frame

System

of

Network計(jì)算機(jī)網(wǎng)絡(luò)的體系結(jié)構(gòu)7

Einführung

von

Software

Engineering工程概論1.1

的發(fā)展概況企業(yè)是一個(gè)生產(chǎn)系統(tǒng)“生產(chǎn)”呢?它一般是指人們使用工具來(lái)創(chuàng)造各種生產(chǎn)資料和生活資料的活動(dòng),即把各種生產(chǎn)要素的輸入轉(zhuǎn)變?yōu)楫a(chǎn)品的輸出過程。這里,生產(chǎn)要素包括如下四個(gè)方面內(nèi)容:生產(chǎn)對(duì)象

的原材

是指完成生產(chǎn)活動(dòng)所使用料和輔助材料。生產(chǎn)勞動(dòng)

它包含每個(gè)勞動(dòng)者用于進(jìn)行生產(chǎn)活動(dòng)的體力和智力。生產(chǎn)資料

指借助于生產(chǎn)勞動(dòng)把生產(chǎn)對(duì)象轉(zhuǎn)變成產(chǎn)品 段,包括機(jī)器設(shè)備、夾具、工具等。生產(chǎn)信息為有效地進(jìn)行生產(chǎn)過程所用到的知識(shí),它包含了產(chǎn)品開發(fā)技術(shù)、生產(chǎn)工藝、生產(chǎn)技術(shù)管理等特性。在目前,信息在生產(chǎn)過程中的作用將變得越來(lái)越重要。Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises環(huán)境決策和控制設(shè)計(jì)開發(fā)制造數(shù)據(jù)庫(kù)市場(chǎng)產(chǎn)品Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises物

料流能

源流信

息流用戶定貨計(jì)劃指令圖1

生產(chǎn)系統(tǒng)的基本框圖利用先進(jìn)的

在互聯(lián)網(wǎng)上從事企業(yè)的研究開發(fā)、生產(chǎn)技術(shù)和管理以及商業(yè)活動(dòng)的經(jīng)營(yíng)方式,正在對(duì)人類經(jīng)濟(jì)和社會(huì)生活正產(chǎn)生越來(lái)越重要的影響,在某些方面,已經(jīng)讓人聯(lián)想起歷史上蒸汽機(jī)和電力的發(fā)明。值得注意的是,互聯(lián)網(wǎng)和電子商務(wù)發(fā)展的速度,甚至遠(yuǎn)遠(yuǎn)超過了蒸汽機(jī)、電以及人類歷史上其他重要的發(fā)明。我們知道,從電的發(fā)明到電的普及,這中間花費(fèi)了近100年。收音機(jī)誕生38年后,使用人數(shù)才達(dá)到5000萬(wàn)。今天Internet發(fā)展20多年,現(xiàn)在世界上已擁有上億的用戶。Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises世上沒有無(wú)源之水,我們先從源頭說(shuō)起。在茹毛飲血的時(shí)代,祖先們可能只用沒有加工過的木棒、石塊謀生,后來(lái)又有弓箭之類,溫飽問題大大得到解決,以后隨著人類生產(chǎn)知識(shí)的積累創(chuàng)新,使用謀生的工具越來(lái)越先進(jìn),組織分工越來(lái)越明確,人類的生活大大改善,以后又有蒸氣機(jī)、電力工具、計(jì)算機(jī)的出現(xiàn),“泰勒制”等現(xiàn)代管理制度的推廣,生產(chǎn)力大力提高,現(xiàn)在出現(xiàn)了互聯(lián)網(wǎng),這又是一次生產(chǎn)力上的,和蒸氣機(jī)的出現(xiàn)一樣,說(shuō)穿了它也是一種工具,為改善人類生活為目的工具,不是裝飾品和

。那么它會(huì)為人類帶來(lái)哪些革命呢?它應(yīng)該為人類帶來(lái)以下三個(gè)方面的:“信息”、“溝通和交流方式”、“組織行為”。Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises信息由于各種互聯(lián)網(wǎng)的出現(xiàn),使得互聯(lián)網(wǎng)成為一個(gè)包羅萬(wàn)象的信息庫(kù),商業(yè)的、學(xué)術(shù)的、的等等信息都可以在互聯(lián)網(wǎng)上發(fā)布和獲取,那么人類獲得知識(shí)和積累經(jīng)驗(yàn)變得輕而易舉,這大大提高了人類更新知識(shí)的能力,減少了重復(fù)勞動(dòng),降低知識(shí)創(chuàng)新成本,使人類新的思想和科學(xué)新發(fā)現(xiàn)的速度成倍地加速,正是這種信息的深刻發(fā)展的使得互聯(lián)網(wǎng)成為生產(chǎn)力高速。Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises溝通和交流方式其次,由于互聯(lián)網(wǎng)的出現(xiàn),使得人類的溝通和交流方式變得容易,正如“電報(bào)”、的出現(xiàn)一樣,人類可以遵守一定模式進(jìn)行商業(yè)的和私人的交流,互聯(lián)網(wǎng)的技術(shù)能夠保證這些交流相對(duì)可靠的進(jìn)行,人類因此可以在幅度提高溝通和交流的效率,給人類生活帶來(lái)較大的方便,進(jìn)而改變了人類的某些生活方式。例:

效應(yīng)Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises組織行為互聯(lián)網(wǎng)的出現(xiàn)使得人類的分工合作發(fā)生巨大的變化,人們隨時(shí)隨地可以做很多種工作,一個(gè)人可能成為不同性質(zhì)的組織成員,另外由于溝通和交流的方便使得組織的形式變得越來(lái)越容易,解決問題,完成工作的能力大為提高,人類征服自然的能力變得無(wú)比強(qiáng)大,因?yàn)榛ヂ?lián)網(wǎng)使得人們?cè)谂龅酱笕蝿?wù)、題的時(shí)候可以迅速組織起來(lái)解決它。例:24小時(shí)

的企業(yè)Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises1.2對(duì)企業(yè)經(jīng)濟(jì)的作用知識(shí)時(shí)代的經(jīng)濟(jì)增長(zhǎng)主要依靠信Prof.

Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises息和知識(shí),對(duì)物質(zhì)的消耗要比工業(yè)時(shí)代低得多。所以說(shuō),工業(yè)時(shí)代的經(jīng)濟(jì)增長(zhǎng)其實(shí)質(zhì)在于高成本的社會(huì)化,知識(shí)時(shí)代的經(jīng)濟(jì)增長(zhǎng)其實(shí)質(zhì)在于低成本的社會(huì)化。例一:信息產(chǎn)業(yè)中的計(jì)算機(jī)

業(yè)、網(wǎng)絡(luò)通信業(yè)可以在十幾年、幾年(甚至更短)內(nèi)達(dá)到或超過工業(yè)時(shí)代以消耗物質(zhì)資源為主的產(chǎn)業(yè)近一個(gè)世紀(jì)才能達(dá)到的資產(chǎn)水平。“物質(zhì)增長(zhǎng)產(chǎn)生的

增長(zhǎng)與時(shí)間的關(guān)系是線性的,信息知識(shí)增長(zhǎng)所產(chǎn)生的

增長(zhǎng)與時(shí)間的關(guān)系則是非線性的?!崩旱匿撹F工業(yè),1960年消耗1.2億噸鋼材,1990年經(jīng)濟(jì)增長(zhǎng)比30年前翻了幾番,但鋼材的消耗是8500萬(wàn)噸,不但沒有增加,反而減少了30%左右。例三:物質(zhì)價(jià)值與信息知識(shí)價(jià)值的差別更為突出。(見表1、表2)Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises表1物質(zhì)增長(zhǎng)與信息知識(shí)增長(zhǎng)所產(chǎn)生的財(cái)富速度比較表公司

資產(chǎn)

時(shí)間10億美元幾十年(洛克菲勒石油大王)10億美元12年(比爾·蓋茨大王)雅虎10億美元3年Ebay10億美元5個(gè)星期Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises光盤材料光盤內(nèi)容價(jià)格1~3元一部

30元1~3元Windows

98

1000元1~3元(工程)

100000元表2

物質(zhì)價(jià)值與信息知識(shí)價(jià)值比較表Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises電子商務(wù)

發(fā)展情況電子商務(wù)作為現(xiàn)代服務(wù)業(yè)中的重要產(chǎn)業(yè),有“朝陽(yáng)產(chǎn)業(yè)、綠色產(chǎn)業(yè)”之稱,具有“三高”、“三新”的特點(diǎn)?!叭摺奔锤呷肆Y本含量、高技術(shù)含量和高附加價(jià)值;“三新”是指新技術(shù)、新業(yè)態(tài)、新方式。人流、物流、

流、信息流“四流合價(jià)值鏈的概一”是對(duì)電子商務(wù)括。國(guó)際的發(fā)展?fàn)顩r:以歐家為例,可以說(shuō)電子商務(wù)業(yè)務(wù)開發(fā)的如火如荼.在法,德等歐洲國(guó)家,電子商務(wù)所產(chǎn)生的營(yíng)業(yè)額已占商務(wù)總額的1/4,在則已高達(dá)1/3以上。Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

EnterprisesCAD/CAM19世紀(jì)的產(chǎn)業(yè)

,蒸汽機(jī)等機(jī)器的發(fā)明和應(yīng)用,大大地增強(qiáng)了人的體力作用。20世紀(jì)的產(chǎn)業(yè)

,電子計(jì)算機(jī)的發(fā)明和應(yīng)用,增強(qiáng)了人的智力作用。而CAD/CAM技術(shù)的應(yīng)用是計(jì)算機(jī)與信息技術(shù)領(lǐng)域里發(fā)展最快和最有效益的。Prof.

Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises虛擬現(xiàn)實(shí)(Vitual

Reality)一個(gè)產(chǎn)品的圖紙剛剛繪制完畢,能否在制造出來(lái)之前,先讓未來(lái)的用戶自己操作使用一下,對(duì)使用性能、產(chǎn)品結(jié)構(gòu)、操作界面等以至外觀案提出自己的意見?答案是肯定的:虛擬現(xiàn)實(shí)技術(shù)可以帶您走入未來(lái)。虛擬現(xiàn)實(shí)(簡(jiǎn)稱VR),又稱靈境技術(shù),是以浸沒感、交互性和構(gòu)想為基本特征的計(jì)算機(jī)高級(jí)人機(jī)界面。它綜合利用了計(jì)算機(jī)圖形學(xué)、仿真技術(shù)、多技術(shù)、人工智能技術(shù)、計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、

并行處理技術(shù)和多傳感器技術(shù),模擬人的視覺、

聽覺、觸覺等感官功能,使人能夠沉浸在計(jì)算機(jī)

生成的虛擬境界中,并能夠通過語(yǔ)言,手勢(shì)等自

然的方式與之進(jìn)行實(shí)時(shí)交互,創(chuàng)建了一種適人化

的信息空間。使用者不僅能夠通過虛擬現(xiàn)實(shí)

系統(tǒng)感受到在客觀物理世界中所經(jīng)歷的“身臨其境

”的真性,而且能夠突破空間、時(shí)間以及其他客觀限制,感受到在真實(shí)世界中無(wú)法親身經(jīng)歷的體驗(yàn)。VR技術(shù)具有現(xiàn)實(shí)的虛擬性。Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises虛擬制造(Vitual

Manufacturing)虛擬制造是提高產(chǎn)品設(shè)計(jì)、生產(chǎn)準(zhǔn)備和生產(chǎn)過程控制水平的一個(gè)集成的、綜合的制造環(huán)境,是面向下一世紀(jì)嶄新的制造概念和企業(yè)發(fā)展的策略。它

涉及到許多技術(shù)領(lǐng)域。Prof.

Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises隨著市場(chǎng)競(jìng)爭(zhēng)的不斷加劇和新技術(shù)的迅速發(fā)展,全球經(jīng)濟(jì)的趨勢(shì)日益增強(qiáng),形成了全球化市場(chǎng)。在全球化市場(chǎng)中,三種因素,即顧客、和競(jìng)爭(zhēng),又簡(jiǎn)稱3C的因素,使企業(yè)的形勢(shì)十分嚴(yán)峻:Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises1)顧客(

Customer),市場(chǎng)的主導(dǎo)權(quán)已轉(zhuǎn)入顧客手中,使市場(chǎng)由賣方市場(chǎng)變?yōu)橘I方市場(chǎng),顧客選擇商品的余地大為擴(kuò)展。因此,怎樣使顧客滿意,就成為企業(yè)的奮斗目標(biāo)和一切工作的歸宿(2)(

Change)市場(chǎng)需求多變,科技進(jìn)步日新月異,產(chǎn)品生命周期不斷縮短,這些變化已成為不可阻擋的潮流,促使企業(yè)加快

步伐。(3)競(jìng)爭(zhēng)(Competition)以往那種僅憑借物美價(jià)廉的商品就能在競(jìng)爭(zhēng)中穩(wěn)操勝券的簡(jiǎn)單競(jìng)爭(zhēng)方式

已被多層面的競(jìng)爭(zhēng)方式一T:按合同及時(shí)交貨或新產(chǎn)品上市時(shí)間、Q:質(zhì)量、

C:成本及S:售前咨詢服務(wù)及售后

、升值服務(wù)所取代。誰(shuí)能提供

獨(dú)占性的產(chǎn)品和一流的服務(wù),誰(shuí)就能夠贏得競(jìng)爭(zhēng)。市場(chǎng)占有率已成為評(píng)判企業(yè)是否具有競(jìng)爭(zhēng)力的最集中的體現(xiàn)。快速產(chǎn)品開發(fā)主要過程模具實(shí)物掃描SLA、FDM、LOM

制件不同的快速原型設(shè)備三維建模SolidworkSTLProEProf.

Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

TechnologyandDevelopment

of

Enterprises合起來(lái)去競(jìng)同濟(jì)大學(xué)CDHKProf.

Dr.-Ing.Bin

Shen1.3企業(yè)應(yīng)用的對(duì)策Information

Technology

andDevelopment

of

Enterprises求生反應(yīng)與速度競(jìng)爭(zhēng)有兩個(gè)人在樹林里過夜,突然跑出一頭大黑熊。一人忙著穿球鞋。另一個(gè)人對(duì)他說(shuō)“你穿鞋有什么用?我們反正跑不過熊啊?”忙著穿球鞋的人說(shuō):“我不是要跑得快過熊,我是要跑得快過你?!痹谏鐣?huì)進(jìn)入信息時(shí)代的重要?dú)v史時(shí)期,市場(chǎng)

反應(yīng)速度決定著企業(yè)

運(yùn),只有能夠迅速應(yīng)對(duì)

市場(chǎng)者,才能成為市場(chǎng)逐鹿的佼佼者。

思科公司

約翰

在談到新經(jīng)濟(jì)的規(guī)律時(shí)

:“現(xiàn)代競(jìng)爭(zhēng)已不是大魚吃小魚。而是快的吃慢的。”因此,在這“快者為王”的時(shí)代,速度已Information

TechnologyandDevelopment

of

EnterprisesProf.

Dr.-Ing.Bin

ShenCDHK成為同企濟(jì)大學(xué)業(yè)的基本生存法則。煮蛙試驗(yàn)與環(huán)境作用曾經(jīng)有一個(gè)古老的試驗(yàn),將一只活蹦亂跳的青蛙投進(jìn)熱水鍋里,青蛙會(huì)立即跳出水鍋。如果把青蛙放在涼水鍋里,下面用火慢慢加熱,青蛙竟然一動(dòng)不動(dòng),舒舒服服地浮在水里,直到它感受到燙想跳出熱水鍋時(shí),卻已無(wú)力逃生。面對(duì)競(jìng)爭(zhēng)環(huán)境的變遷,為什么有些企業(yè)應(yīng)變自如獲得生機(jī),而有些企業(yè)卻步履維艱,關(guān)門呢?其原因與上述關(guān)于青蛙的試驗(yàn)頗為相似。變化的環(huán)境如同逐步提高的水溫,有些企業(yè)敏感性強(qiáng),及時(shí)覺察,積極應(yīng)對(duì),因而應(yīng)變自如,擺脫;可有的企業(yè)感覺麻木,得過且過,到了積重難返之時(shí),只有慘遭淘汰的份了。Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises老鼠困斃與適“度”把握一只饑餓的小老鼠遇到一只盛滿大米的米缸,看著白花花的大米、小老鼠興奮不已,每天跳進(jìn)跳出,想吃就吃。但是缸里的米‘天天地減少,缸口與米之間的距離天天在拉大。當(dāng)小老鼠能力所及的跳高高度低于缸口與米之間的距離時(shí),小老鼠沒有擺脫米的誘惑。仍與往常一樣跳入缸中享受米的滋味,但就這一跳、從此小老鼠再也跳不到缸外。當(dāng)缸中的米吃完后,老鼠便困死于缸中。做任何事情,都要把握‘個(gè)“度”,

了事物原有的“度”,事物將會(huì)發(fā)生質(zhì)的變化。我們有些企業(yè)在市場(chǎng)競(jìng)爭(zhēng)中,對(duì)事物“度”的把握不夠。Prof.Dr.-Ing.Bin

Shen同濟(jì)大學(xué)CDHKInformation

Technology

andDevelopment

of

Enterprises2

Datenbank

System數(shù)據(jù)庫(kù)系統(tǒng)Definition

基本定義Datenbank

數(shù)據(jù)庫(kù):數(shù)據(jù)庫(kù)是相互關(guān)聯(lián)的數(shù)據(jù)集合。數(shù)據(jù)是描述現(xiàn)實(shí)世界中各種具體事物或抽象概念的可

并具有明確意義的信息。數(shù)據(jù)能夠?yàn)樘囟ńM織(如企事業(yè)單位)的多種應(yīng)用服務(wù)。這個(gè)數(shù)據(jù)集合可以定義為一個(gè)數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)具有如下特性:數(shù)據(jù)庫(kù)是具有邏輯關(guān)系和確定意義的數(shù)據(jù)集合。邏輯上無(wú)關(guān)的數(shù)據(jù)集合不能稱為數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)是針對(duì)明確的應(yīng)用目標(biāo)而設(shè)計(jì)、建立和加載的。每個(gè)數(shù)據(jù)庫(kù)都具有一組用戶,并為這些用戶的應(yīng)用服務(wù)。一個(gè)數(shù)據(jù)庫(kù)表示了現(xiàn)實(shí)世界的某些方面(稱為小世界)。一個(gè)數(shù)據(jù)庫(kù)所表示的小世界的改變必須及時(shí)地反映到該數(shù)據(jù)庫(kù)中來(lái)。Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-1Datenbank

Management

System

數(shù)據(jù)庫(kù)管理系統(tǒng):數(shù)據(jù)庫(kù)管理系統(tǒng)是一個(gè)通用的系統(tǒng),由一組計(jì)算機(jī)程序構(gòu)成。數(shù)據(jù)庫(kù)管理系統(tǒng)能夠?qū)?shù)據(jù)庫(kù)進(jìn)行有效的管理,包括管理、安全性管理、完整性管理等。數(shù)據(jù)庫(kù)管理系統(tǒng)提供了一個(gè)

環(huán)境,使用戶能方便快速地建立、維護(hù)、檢索、存取和處理數(shù)據(jù)庫(kù)中的信息。Datenbank

System

數(shù)據(jù)庫(kù)系統(tǒng):數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)管理系統(tǒng)加在一起構(gòu)成了數(shù)據(jù)庫(kù)系統(tǒng)。有時(shí)人們把數(shù)據(jù)庫(kù)系統(tǒng)廣義地定義為“數(shù)據(jù)庫(kù)十?dāng)?shù)據(jù)庫(kù)管理系統(tǒng)十?dāng)?shù)據(jù)庫(kù)管理員十應(yīng)用程序十用戶”。圖2-1給出了一個(gè)簡(jiǎn)化的數(shù)據(jù)庫(kù)系統(tǒng)環(huán)境。教學(xué)管理數(shù)據(jù)庫(kù)上的操作有兩類。第一類是數(shù)據(jù)庫(kù)查詢操作。例如,列出常紅所選修的課程和成績(jī),列出所有選修87年第一學(xué)期“數(shù)13”課程的學(xué)生

。第二類是數(shù)據(jù)庫(kù)更新操作。例如,在Grade文件中

一個(gè)“常紅的數(shù)據(jù)庫(kù)課程成績(jī)?yōu)?0分”的新記錄。這兩類操作是所有數(shù)據(jù)庫(kù)上所用的常用操作。Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-2圖2-1

一個(gè)簡(jiǎn)化的數(shù)據(jù)庫(kù)系統(tǒng)環(huán)境圖2-2

一個(gè)數(shù)據(jù)庫(kù)實(shí)例Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-32.2

數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)同濟(jì)大學(xué)CDHK機(jī)械工程系Entwicklung

der

Technik

vonDatenbankProf.Dr.-IngBinShen2-4Eigenschaften

der

Datenbank數(shù)據(jù)庫(kù)系統(tǒng)是在文件系統(tǒng)的基礎(chǔ)上發(fā)展起來(lái)的。但是,數(shù)據(jù)庫(kù)系統(tǒng)與文件系統(tǒng)具有本質(zhì)上的區(qū)別。文件系統(tǒng)的缺點(diǎn):數(shù)據(jù)共享性差,冗余度大數(shù)據(jù)不一致數(shù)據(jù)獨(dú)立性差數(shù)據(jù)結(jié)構(gòu)化程度低數(shù)據(jù)庫(kù)系統(tǒng)的優(yōu)點(diǎn)信息完整、功能通用程序與數(shù)據(jù)獨(dú)立數(shù)據(jù)抽象支持?jǐn)?shù)據(jù)的不同視圖控制數(shù)據(jù)冗余支持?jǐn)?shù)據(jù)共享限制非 的存取提供多種用戶界面表示數(shù)據(jù)之間的復(fù)雜聯(lián)系完整性約束數(shù)據(jù)恢復(fù)2.3 ion

der

Daten

數(shù)據(jù)抽象數(shù)據(jù)庫(kù)系統(tǒng)的主要目的之一是為用戶提供一個(gè)數(shù)據(jù)的抽象視圖,隱藏?cái)?shù)據(jù)的

結(jié)構(gòu)和存取方法等細(xì)節(jié)。三種數(shù)據(jù)抽象和數(shù)據(jù)庫(kù)模式數(shù)據(jù)庫(kù)系

般提供提供三種級(jí)別的數(shù)據(jù)抽象:視圖級(jí)抽象:把現(xiàn)實(shí)世界抽象為數(shù)據(jù)庫(kù)的外模式概念級(jí)抽象:把數(shù)據(jù)庫(kù)的外模式抽象為數(shù)據(jù)庫(kù)的概念模式物理級(jí)抽象:把數(shù)據(jù)庫(kù)的概念模式抽象為數(shù)據(jù)庫(kù)的內(nèi)模式圖2-3

三種數(shù)據(jù)抽象和三種數(shù)據(jù)庫(kù)模式的關(guān)系同濟(jì)大學(xué)CDHK機(jī)械工程系Entwicklung

der

Technik

vonDatenbankProf.

Dr.-Ing

Bin

Shen2-52.3.2

數(shù)據(jù)獨(dú)立性概念模式與內(nèi)模式之間的外模式與概念模式之間的數(shù)據(jù)庫(kù)系統(tǒng)的兩種

實(shí)現(xiàn)了數(shù)據(jù)庫(kù)系統(tǒng)的兩種數(shù)據(jù)獨(dú)立性。第一種數(shù)據(jù)獨(dú)立性稱為物理數(shù)據(jù)獨(dú)立性。物理數(shù)據(jù)獨(dú)立性由內(nèi)模式與概念模式之間的

性是指當(dāng)數(shù)據(jù)庫(kù)的內(nèi)模式(即物理實(shí)現(xiàn)。物理數(shù)據(jù)獨(dú)立結(jié)構(gòu))發(fā)生改變時(shí),數(shù)據(jù)的邏輯結(jié)構(gòu)不變。物理數(shù)據(jù)獨(dú)立性保證,當(dāng)數(shù)據(jù)庫(kù)的內(nèi)模式發(fā)生改變時(shí),用戶編寫的應(yīng)用程序可以不變。但是,為了保證應(yīng)用程序能夠正確執(zhí)行,我們需要修改內(nèi)模式與概念模式之間的。數(shù)據(jù)庫(kù)系統(tǒng)的第二種數(shù)據(jù)獨(dú)立性稱為邏輯數(shù)據(jù)獨(dú)立性。邏輯數(shù)據(jù)獨(dú)立性由概念模式與外模式之間的

實(shí)現(xiàn)。邏輯數(shù)據(jù)獨(dú)立性是指當(dāng)概念數(shù)據(jù)庫(kù)模式發(fā)生改變時(shí),數(shù)據(jù)庫(kù)的外模式不變。邏輯數(shù)據(jù)獨(dú)立性保證,當(dāng)數(shù)據(jù)庫(kù)的概念模式發(fā)生改變時(shí),建立在外模式上的應(yīng)用程序不需要修改。當(dāng)然,為了保證應(yīng)用程序能夠正確執(zhí)行,我們需要修改概念模式與外模式之間的

。兩種數(shù)據(jù)獨(dú)立性的本質(zhì)是把數(shù)據(jù)定義從應(yīng)用程序中分離出來(lái)。應(yīng)用程序中的數(shù)據(jù)存取(即兩種 工作)由數(shù)據(jù)庫(kù)管理系統(tǒng)完成,從而減化了編制應(yīng)用程序的工作量,減少了應(yīng)用程序的 和修改。值得注意的是,實(shí)際數(shù)據(jù)庫(kù)系統(tǒng)的邏輯數(shù)據(jù)獨(dú)立性不能保證直接建立在數(shù)據(jù)庫(kù)概念模式上的應(yīng)用程序與數(shù)據(jù)的獨(dú)立。當(dāng)數(shù)據(jù)庫(kù)的概念模式改變時(shí),這些應(yīng)用程序仍然需要修改。從這種意義上說(shuō),數(shù)據(jù)庫(kù)系統(tǒng)提供的邏輯數(shù)據(jù)獨(dú)立性是不完備的。同濟(jì)大學(xué)CDHK機(jī)械工程系Entwicklungder

Technik

vonDatenbankProf.

Dr.-Ing

Bin

Shen2-62.4

數(shù)據(jù)模型Modell

der

Daten數(shù)據(jù)模型是實(shí)現(xiàn)數(shù)據(jù)抽象的主要工具。數(shù)據(jù)模型也是數(shù)據(jù)庫(kù)系統(tǒng)的重要基礎(chǔ)。數(shù)據(jù)模型決定了數(shù)據(jù)庫(kù)系統(tǒng)的結(jié)構(gòu)、數(shù)據(jù)定義語(yǔ)言和數(shù)據(jù)語(yǔ)言、數(shù)據(jù)庫(kù)設(shè)計(jì)方法、數(shù)據(jù)庫(kù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。數(shù)據(jù)模型是一組描述數(shù)據(jù)庫(kù)的概念。這些概念精確地描述數(shù)據(jù)、數(shù)據(jù)之間的聯(lián)系、數(shù)據(jù)的語(yǔ)義和完整性約束。很多數(shù)據(jù)模型還包括一個(gè)操作集合。這些操作用來(lái)說(shuō)明對(duì)數(shù)據(jù)庫(kù)的存取和更新。數(shù)據(jù)模型應(yīng)滿足面要求:能

模擬現(xiàn)實(shí)世界;容易為人們理解;便于在計(jì)算機(jī)上實(shí)現(xiàn)。目前已經(jīng)存在很多數(shù)據(jù)模型。這些數(shù)據(jù)模型可以分為四類:基于對(duì)象的數(shù)據(jù)模型基于記錄的數(shù)據(jù)模型物理數(shù)據(jù)模型邏輯數(shù)據(jù)模型Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-7基于對(duì)象的數(shù)據(jù)模型用于在概念和視圖抽象級(jí)別上描述數(shù)據(jù)。這類數(shù)據(jù)模型具有相當(dāng)靈活的結(jié)構(gòu)化能力,而且允許明確地定義完整性約束。目前已經(jīng)出現(xiàn)了很多基于對(duì)象的數(shù)據(jù)模型,其中比較知名的有:實(shí)體—聯(lián)系模型面1.面

象的數(shù)據(jù)模型二元數(shù)據(jù)模型語(yǔ)義數(shù)據(jù)模型函數(shù)數(shù)據(jù)模型等。下面主要介紹實(shí)體—聯(lián)系模型、擴(kuò)展的實(shí)體聯(lián)系模型和象的數(shù)據(jù)模型。實(shí)體、聯(lián)系模型實(shí)體—聯(lián)系模型包括實(shí)體、屬性、實(shí)體間聯(lián)系等概念。實(shí)體對(duì)應(yīng)于現(xiàn)實(shí)世界中可區(qū)別的客觀對(duì)象或抽象概念。例如學(xué)校、人、樹、動(dòng)物、植物都是實(shí)體。屬性是實(shí)體特征的抽象。例如,人的屬性可以包括“

”、“生日”、“職務(wù)”、“特長(zhǎng)”等。抽象地說(shuō),實(shí)體型是屬性的集合。當(dāng)一個(gè)實(shí)體型的所有屬性的值都確定以后,我們就得到這個(gè)實(shí)體型的一個(gè)實(shí)例。在一個(gè)實(shí)體型的屬性中有一組特殊的屬性,這組屬性的值可以區(qū)別出該實(shí)體型的不同實(shí)例。例如,在人的屬性中,“

”和“生日”的值可以區(qū)別不同的人。這組特殊屬性稱為實(shí)體型的鍵屬性。實(shí)體間聯(lián)系對(duì)應(yīng)于客觀世界中各種對(duì)象或抽象概念之間的聯(lián)系。例如,工廠、產(chǎn)品、用戶這三個(gè)實(shí)體之間,存在“工廠為某個(gè)用戶生產(chǎn)某種產(chǎn)品的聯(lián)系。Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-8圖2-4給出工廠、產(chǎn)品和用戶的實(shí)體—聯(lián)系模型。圖中方框表示實(shí)體型,圓框表示屬性,菱形框表示實(shí)體間聯(lián)系。方框所連接的圓框是對(duì)應(yīng)實(shí)體型的屬性。菱形框所連接的方框表示實(shí)體間聯(lián)系所關(guān)聯(lián)的實(shí)體。圖2-4

工廠、產(chǎn)品和用戶的實(shí)體—聯(lián)系模型Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-

面面象數(shù)據(jù)模型象數(shù)據(jù)模型建立在對(duì)象集合的基礎(chǔ)上。面

象數(shù)據(jù)模型的基本數(shù)據(jù)結(jié)構(gòu)是對(duì)象。面象數(shù)據(jù)模型的主要概念是對(duì)象類。對(duì)象類由一組變量和一組程序代碼構(gòu)成。變量表示對(duì)象類的特征。一個(gè)對(duì)象類的程序代碼定義了該對(duì)象變量上的操作,稱為這個(gè)對(duì)象類的方法。一個(gè)對(duì)象的變量可以是另一個(gè)對(duì)象。對(duì)象的嵌套層次數(shù)沒有任何限制。當(dāng)一個(gè)對(duì)象類的每個(gè)變量都賦以確定的值以后,我們就得到了這個(gè)對(duì)象類的一個(gè)對(duì)象。把數(shù)據(jù)和方法組合為一個(gè)對(duì)象的思想類似于程序設(shè)計(jì)語(yǔ)言中抽象數(shù)據(jù)類型的概念。在面

象的數(shù)據(jù)模型中,一個(gè)對(duì)象存取另一個(gè)對(duì)象的數(shù)據(jù)的唯一途徑是調(diào)用被存取對(duì)象的某個(gè)方法。對(duì)象方法的調(diào)用通過在對(duì)象之間傳送消息來(lái)實(shí)現(xiàn)。對(duì)象方法的調(diào)用界面是對(duì)外可見的,對(duì)象

的變量和程序編碼是封閉不可見的。面

象數(shù)據(jù)模型實(shí)現(xiàn)了數(shù)據(jù)的獨(dú)立性。下邊我們用一個(gè)例子來(lái)說(shuō)明這種獨(dú)立性。我仍可以把銀行的帳戶作為一個(gè)對(duì)象簡(jiǎn)記作account。對(duì)象account具有兩個(gè)變量。一個(gè)是帳號(hào)變量

number。另一個(gè)是存款余額變量balance,account具有一個(gè)方法pay_interest,負(fù)責(zé)計(jì)算每個(gè)帳戶的利息并增加到該帳戶的

balance變量。該銀行以往付給每個(gè)帳戶的利息都是8%。現(xiàn)在,銀行調(diào)整利息如下:只有balance高于1000元的帳戶才能獲得8%的利息,其他帳戶只能獲得6%的利息。使用其他數(shù)據(jù)模型實(shí)現(xiàn)這種利息調(diào)整,必須修改有關(guān)的應(yīng)用程序。使用面

象的數(shù)據(jù)模型,我們只需修改方法pay—interest就可以實(shí)現(xiàn)這種利息調(diào)整,不帶任何其他改變,更不需要修改應(yīng)用程序。面

象的數(shù)據(jù)模型既能用來(lái)定義數(shù)據(jù)庫(kù)的整體邏輯結(jié)構(gòu)也可以用來(lái)提供數(shù)據(jù)庫(kù)系統(tǒng)實(shí)現(xiàn)的高級(jí)描述。Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-102.

基于記錄的數(shù)據(jù)模型基于記錄的數(shù)據(jù)模型可以用來(lái)定義數(shù)據(jù)庫(kù)的概念模式和外模式?;谟涗浀臄?shù)據(jù)模型把數(shù)據(jù)庫(kù)定義為多種具有固定格式的記錄型。每個(gè)記錄型由固定數(shù)量的域或?qū)傩詷?gòu)成。每個(gè)域或?qū)傩跃哂泄潭ǖ拈L(zhǎng)度。使用固定長(zhǎng)記錄定義數(shù)據(jù)庫(kù)可以簡(jiǎn)化數(shù)據(jù)庫(kù)的物理級(jí)實(shí)現(xiàn)。基于記錄的數(shù)據(jù)模型不包含直接表示程序代碼的機(jī)構(gòu)。這類數(shù)據(jù)模型具有獨(dú)立的語(yǔ)言。用戶可以使用這種語(yǔ)言表示數(shù)據(jù)庫(kù)查詢和更新要求。具有代表性的基于記錄的數(shù)據(jù)模型包括關(guān)系數(shù)據(jù)模型、網(wǎng)絡(luò)數(shù)據(jù)模型層次數(shù)據(jù)模型。目前,關(guān)系數(shù)據(jù)模型比網(wǎng)絡(luò)和層次數(shù)據(jù)模型更受歡迎。1.

關(guān)系數(shù)據(jù)模型關(guān)系數(shù)據(jù)模型的是數(shù)學(xué)概念關(guān)系。一個(gè)關(guān)系可以視為一個(gè)表。每個(gè)表具有固定個(gè)數(shù)的列。每一列具有一個(gè)名字,稱為關(guān)系的屬性。每一行數(shù)據(jù)稱為一個(gè)元組。關(guān)系數(shù)據(jù)模型使用關(guān)系表示數(shù)據(jù)和數(shù)據(jù)之間的聯(lián)系。關(guān)系數(shù)據(jù)模型具有堅(jiān)實(shí)的理論基礎(chǔ),是目前多數(shù)商品化數(shù)據(jù)庫(kù)系統(tǒng)所采用的數(shù)據(jù)模型。圖2-5給出了一個(gè)關(guān)系數(shù)據(jù)庫(kù)實(shí)例。2.網(wǎng)絡(luò)數(shù)據(jù)模型網(wǎng)絡(luò)數(shù)據(jù)模型的

是記錄和系。記錄表示數(shù)據(jù)。一個(gè)記錄具有多個(gè)數(shù)據(jù)域。每個(gè)數(shù)據(jù)域表示一個(gè)數(shù)據(jù)項(xiàng)。數(shù)據(jù)之間的聯(lián)系由系表示。系可以視為一個(gè)指針。圖2-6給出了圖2-5數(shù)據(jù)的基于網(wǎng)絡(luò)數(shù)據(jù)模型的數(shù)據(jù)庫(kù)。Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-

層次數(shù)據(jù)模型層次數(shù)據(jù)模型類似于網(wǎng)絡(luò)數(shù)據(jù)模型。層次數(shù)據(jù)模型也使用記錄和系表示數(shù)據(jù)和數(shù)據(jù)之間的聯(lián)系。層次數(shù)據(jù)模型與網(wǎng)絡(luò)數(shù)據(jù)模型的不同在于記錄不能被組織成為任意的圖,必須組織成樹的集合。圖2-7以圖2-6的數(shù)據(jù)為例,給出了一個(gè)基于層次數(shù)據(jù)模型的數(shù)據(jù)庫(kù)實(shí)例。物理數(shù)據(jù)模型物理數(shù)據(jù)模型用來(lái)實(shí)現(xiàn)物理抽象。與邏輯數(shù)據(jù)模型相比,物理數(shù)據(jù)模型很少被使用。兩個(gè)比較知名的物理數(shù)據(jù)模型是模型(Unifyingmodel)和框架 器模型(Framememorymodel)。數(shù)據(jù)庫(kù)模式和實(shí)例數(shù)據(jù)庫(kù)一詞包括了兩方面的意義。一是模式,二是實(shí)例。數(shù)據(jù)庫(kù)模式是一個(gè)數(shù)據(jù)庫(kù)的基于特定數(shù)據(jù)模型的結(jié)構(gòu)定義。數(shù)據(jù)庫(kù)模式與程序設(shè)計(jì)語(yǔ)言中的類型定義類似,是一個(gè)數(shù)據(jù)庫(kù)框架。例如,圖2-5的關(guān)系數(shù)據(jù)庫(kù)模式由如下兩個(gè)關(guān)系模同濟(jì)大學(xué)CDHK機(jī)械工程系Entwicklungder

Technik

vonDatenbankProf.

Dr.-Ing

Bin

Shen2-12式構(gòu)成:

儲(chǔ)蓄戶(,城市,區(qū),街道,帳號(hào)), 帳戶(帳號(hào),存款余額)。其中,“儲(chǔ)蓄戶”和“帳戶”是關(guān)系名,“

”、“城市”、“區(qū)”、“道”和“帳號(hào)”是儲(chǔ)蓄戶關(guān)系的屬性,“賬號(hào)”和“存款余額”是帳戶關(guān)系的屬性。在任意一個(gè)特定的時(shí)刻,數(shù)據(jù)庫(kù)中的數(shù)據(jù)稱為一個(gè)數(shù)據(jù)庫(kù)實(shí)例。數(shù)據(jù)庫(kù)實(shí)例與程序設(shè)計(jì)語(yǔ)言中的變量值的概念對(duì)應(yīng)。圖2-5給出了一個(gè)關(guān)系數(shù)據(jù)庫(kù)實(shí)例。數(shù)據(jù)庫(kù)模式是相對(duì)穩(wěn)定的,很少變化。數(shù)據(jù)庫(kù)實(shí)例是動(dòng)態(tài)的,隨數(shù)據(jù)庫(kù)更新操作而變化。圖2-7

一個(gè)基于層次數(shù)據(jù)模型的數(shù)據(jù)庫(kù)實(shí)例圖2-5

一個(gè)關(guān)系數(shù)據(jù)庫(kù)實(shí)例Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-13圖2-6

圖2-5中數(shù)據(jù)的基于網(wǎng)絡(luò)數(shù)據(jù)模型的數(shù)據(jù)庫(kù)2.5

數(shù)據(jù)庫(kù)語(yǔ)言Sprache

der

Datenbank每個(gè)數(shù)據(jù)庫(kù)系統(tǒng)都為用戶提供一個(gè)數(shù)據(jù)庫(kù)語(yǔ)言。用戶可以使用這個(gè)語(yǔ)言定義和

數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)語(yǔ)言包括兩個(gè)子語(yǔ)言。一個(gè)是數(shù)據(jù)定義于語(yǔ)言。另一個(gè)是數(shù)據(jù)

于語(yǔ)言。在很多數(shù)據(jù)庫(kù)系統(tǒng)中,這兩個(gè)子語(yǔ)言被合并為于語(yǔ)言為一體的典型數(shù)一個(gè)語(yǔ)言。SQL語(yǔ)言是一個(gè)集數(shù)據(jù)定義和數(shù)據(jù)據(jù)庫(kù)語(yǔ)言。數(shù)據(jù)定義子語(yǔ)言用來(lái)定義數(shù)據(jù)庫(kù)模式,簡(jiǎn)記作DDL。DDL包括數(shù)據(jù)庫(kù)模式定義和數(shù)據(jù)庫(kù)結(jié)構(gòu)與存取方法定義兩方面。數(shù)據(jù)定義子語(yǔ)言的處理程序也相應(yīng)地分為兩部分。一部分是數(shù)據(jù)庫(kù)模式定義處理程序。另一部分是結(jié)構(gòu)和存取方法定義處理程序。數(shù)據(jù)庫(kù)模式定義處理程序接收用

DDL表示的數(shù)據(jù)庫(kù)模式定義,把其變換為表示形式,到數(shù)據(jù)庫(kù)系統(tǒng)中稱為數(shù)據(jù)字典的特殊文件中。結(jié)構(gòu)和存取方法定義處理程序接收用DDL表示的數(shù)據(jù)庫(kù)的結(jié)構(gòu)和存取方法定義,在設(shè)備上創(chuàng)建相關(guān)的數(shù)據(jù)庫(kù)文件,建立起物理數(shù)據(jù)庫(kù)。數(shù)據(jù)定義于語(yǔ)言也包括數(shù)據(jù)庫(kù)模式的刪除與修改功能。數(shù)據(jù)

子語(yǔ)言用來(lái)表示用戶對(duì)數(shù)據(jù)庫(kù)的操作請(qǐng)求。一般地,數(shù)據(jù)語(yǔ)言能夠表示如下的數(shù)據(jù)庫(kù)操作:查詢數(shù)據(jù)庫(kù)中的信息,向數(shù)據(jù)庫(kù)

新的信息,從數(shù)據(jù)庫(kù)刪除信息,修改數(shù)據(jù)庫(kù)中的信息。數(shù)據(jù)語(yǔ)言分為兩類:過程性語(yǔ)言和非過程性語(yǔ)言。過程性語(yǔ)言要求用戶既說(shuō)明需要數(shù)據(jù)庫(kù)中的什么數(shù)據(jù),也說(shuō)明怎樣搜索這些數(shù)據(jù)。非過程性語(yǔ)宣只要求用戶說(shuō)明需要數(shù)據(jù)庫(kù)中的什么數(shù)據(jù);不需要說(shuō)明怎樣搜索這些數(shù)據(jù)。非過程性語(yǔ)言比過程性語(yǔ)言容易學(xué)習(xí)和使用。但是,非過程性語(yǔ)言產(chǎn)生的處理程序代碼要比過程性語(yǔ)言產(chǎn)生的代碼效率低。這個(gè)問題可以通過各種查詢優(yōu)化技術(shù)來(lái)解決。數(shù)據(jù)語(yǔ)言的主要部分是查詢數(shù)據(jù)庫(kù)中的信息。我們稱這部分為數(shù)據(jù)查詢語(yǔ)言。人們常把數(shù)據(jù)語(yǔ)言稱為查詢語(yǔ)言。雖然這種叫法不確切,但是人們已經(jīng)于這種叫法。為了順應(yīng)人們的,本書有時(shí)也把數(shù)據(jù)語(yǔ)言稱為數(shù)據(jù)查詢語(yǔ)言。Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-142.6

數(shù)據(jù)庫(kù)管理系統(tǒng)的結(jié)構(gòu)Aufbau

der

Datenbankverwaltungssysteme(

Database

Management

Systems)數(shù)據(jù)庫(kù)管理系統(tǒng)分為多個(gè)程序模塊。每個(gè)模塊實(shí)現(xiàn)數(shù)據(jù)庫(kù)系統(tǒng)的一種功能。一般情況下,數(shù)據(jù)庫(kù)系統(tǒng)建立在操作系統(tǒng)基礎(chǔ)上。數(shù)據(jù)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)必須考慮與操作系統(tǒng)接口的問題。圖2-8給出了數(shù)據(jù)庫(kù)系統(tǒng)的結(jié)構(gòu)圖。圖2-8

數(shù)據(jù)庫(kù)系統(tǒng)的結(jié)構(gòu)圖Entwicklung

der

Technik

vonDatenbank同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen2-152.7

數(shù)據(jù)庫(kù)技術(shù)的發(fā)展同濟(jì)大學(xué)CDHK機(jī)械工程系Entwicklung

der

Technik

vonDatenbankProf.

Dr.-Ing

Bin

Shen2-16Entwicklung

der

Technik

von

Datenbanksystem數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)科學(xué)技術(shù)中發(fā)展最快的重要分支之一,它已經(jīng)成為計(jì)算機(jī)信息系統(tǒng)和應(yīng)用系統(tǒng)的重要技術(shù)支柱,在短短的30年里,它從第一代的網(wǎng)狀、層次數(shù)據(jù)庫(kù)技術(shù)和第二代的關(guān)系數(shù)據(jù)庫(kù)技術(shù),發(fā)展到第三代的面向新一代應(yīng)用的數(shù)據(jù)庫(kù)象為技術(shù)。數(shù)據(jù)庫(kù)技術(shù)與網(wǎng)絡(luò)通信技術(shù)、人工智能技術(shù)、面程序設(shè)計(jì)技術(shù)、并行計(jì)算技術(shù)等互相滲透、有機(jī)地結(jié)

當(dāng)代數(shù)據(jù)庫(kù)技術(shù)發(fā)展的重要特征。第一代數(shù)據(jù)庫(kù)系統(tǒng)第一代數(shù)據(jù)庫(kù)系統(tǒng)是70年代研制的層次和網(wǎng)狀數(shù)據(jù)庫(kù)系統(tǒng)。第二代數(shù)據(jù)庫(kù)系統(tǒng)第二代數(shù)據(jù)庫(kù)系統(tǒng)是關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。2.7.2

第三代數(shù)據(jù)庫(kù)系統(tǒng)第三代數(shù)據(jù)庫(kù)系統(tǒng)的特征是:面 象模型數(shù)據(jù)庫(kù)技術(shù)與其它學(xué)科的技術(shù)內(nèi)容互相結(jié)合分布式數(shù)據(jù)庫(kù)、工程數(shù)據(jù)庫(kù)、演繹數(shù)據(jù)庫(kù)、知識(shí)數(shù)據(jù)庫(kù)模糊數(shù)據(jù)庫(kù)、時(shí)態(tài)數(shù)據(jù)庫(kù)、統(tǒng)計(jì)數(shù)據(jù)庫(kù)、空間數(shù)據(jù)庫(kù)、多數(shù)據(jù)庫(kù)、并行數(shù)據(jù)庫(kù)等都是第三代數(shù)據(jù)庫(kù)的實(shí)例習(xí)題übungen1.試回答下列問題:(1)(2)(3)數(shù)據(jù)庫(kù)?數(shù)據(jù)庫(kù)管理系統(tǒng)`?數(shù)據(jù)庫(kù)系統(tǒng)?試述文件系統(tǒng)的缺點(diǎn)。試述數(shù)據(jù)庫(kù)系統(tǒng)的五個(gè)特點(diǎn)?試述數(shù)據(jù)庫(kù)系統(tǒng)的五類用戶及其職責(zé)?解釋下列概念:內(nèi)模式,概念模式,外模式,視圖抽象,概念抽象,物理抽象試述數(shù)據(jù)庫(kù)的物理獨(dú)立性和邏輯獨(dú)立性。試回答下列問題:(1)數(shù)據(jù)模型?實(shí)體。聯(lián)系模型的主要概念是什么?并給出解釋。面

象數(shù)據(jù)模型中的對(duì)象類和對(duì)象的區(qū)別是什么?關(guān)系數(shù)據(jù)模型、網(wǎng)絡(luò)數(shù)據(jù)模型和層次數(shù)據(jù)模型的區(qū)別是什么?數(shù)據(jù)庫(kù)模式與數(shù)據(jù)庫(kù)實(shí)例的區(qū)別是什么?數(shù)據(jù)庫(kù)語(yǔ)言一般都包括哪些子語(yǔ)言?每

語(yǔ)言的功能是什么?同濟(jì)大學(xué)CDHK機(jī)械工程系Entwicklung

der

Technik

vonDatenbankProf.

Dr.-Ing

Bin

Shen2-17Relational

Datebase

SystemProf.

Dr.-Ing

Bin

Shen3-1同濟(jì)大學(xué)CDHK3

Relational

Datebase

System1970年E.F.Gold

:A

Relational

Model

of

Datafor

Shared

Data

Base,從此開始了關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的研究。關(guān)系數(shù)據(jù)庫(kù)是已二維表形式`

組織數(shù)據(jù),應(yīng)用數(shù)學(xué)方式處理數(shù)據(jù)庫(kù)組織的方法。關(guān)系模型的基本概念關(guān)系數(shù)據(jù)模型是關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的基礎(chǔ)。關(guān)系數(shù)據(jù)模型由數(shù)據(jù)結(jié)構(gòu)、完整性約束規(guī)則和關(guān)系運(yùn)算三部分構(gòu)成。基本術(shù)語(yǔ):關(guān)系

一個(gè)關(guān)系就是一張二維表,每個(gè)關(guān)系有一個(gè)關(guān)系名。在計(jì)算機(jī)里,一個(gè)關(guān)系可以

為一個(gè)文件,如FoxPro中的.dbf文件

,SQL數(shù)據(jù)庫(kù)中為一個(gè)table。元組表中的行稱為元組。一行為一個(gè)元組,對(duì)應(yīng)文件中的一個(gè)記錄值。屬性表中的列稱為屬性,每一列有一個(gè)屬性名。屬性值相當(dāng)于記錄中的數(shù)據(jù)項(xiàng)或者字段值。域

屬性的取值范圍,即不同元組對(duì)同一個(gè)屬性的值所限定的范圍。例如,邏輯型屬性只能從邏輯真(如.T.)或邏輯假(如.F.)兩個(gè)值中取值?!りP(guān)系模式對(duì)關(guān)系的描述稱為關(guān)系模式,格式為:關(guān)系名(屬性名1,屬性名2,,,.,屬性名n)一個(gè)關(guān)系模式對(duì)應(yīng)一個(gè)關(guān)系文件的結(jié)構(gòu)。例如:R(S#,SNAME,SEX,BIRTHDAY,CLASS)機(jī)械工程系關(guān)鍵字(或碼)屬性或?qū)傩越M合,其值能夠唯一地標(biāo)識(shí)一個(gè)元組。主關(guān)鍵字(或主碼)

在一個(gè)關(guān)系中可能有多個(gè)候選關(guān)鍵字,從中選擇一個(gè)作為主關(guān)鍵字。主關(guān)鍵字在關(guān)系中用來(lái)作為

、刪除、檢索元`

組的操作變量。外關(guān)鍵字(或外碼)如果一個(gè)關(guān)系中的屬性或?qū)傩越M并非該關(guān)系的關(guān)鍵字,但它們是另外一個(gè)關(guān)系的關(guān)鍵字,則稱其為該關(guān)系的外關(guān)鍵字。了解上述術(shù)語(yǔ)之后,又可以將關(guān)系定義為元組的集合。關(guān)系模式是命名的屬性集合。元組是屬性值的集合。一個(gè)具體的關(guān)系模型是若干個(gè)關(guān)系模式的集合。關(guān)系的數(shù)據(jù)結(jié)構(gòu)(數(shù)學(xué)定義)積設(shè)D1,D2,...,Dn為任意集合,定義D1,D2,...,Dn的笛卡爾積為:Dl×D2×…×Dn={(dl,d2,...,dn)

|

di∈Di,i=1,...,n}其中每一個(gè)元素(dl,d2,...,dn)叫做一個(gè)n元組。例如,Dn={0,1},D2={a,b,c}則:D1×D2={(0,a),(0,b),(0,c),(1,a),(1,b),(1,c)}同濟(jì)大學(xué)CDHKProf.

Dr.-Ing

Bin

Shen3-2Relational

Datebase

System機(jī)械工程系3.2.2

關(guān)系積Dl×D2×…×Dn的任一個(gè)子集稱為Dl×D2×…×Dn上的一個(gè)n元關(guān)系。同樣可以把關(guān)系看成二維表,給表的每一列取一個(gè)名稱,關(guān)系是用集合代數(shù)的

積定義的,關(guān)系是元組的集合,因此,關(guān)系具有如下性質(zhì):列是同質(zhì)的,即每一列中的分量是同類型的數(shù)據(jù),來(lái)自同一域。不同的列可出自同一個(gè)域,每一列稱為屬性,要給予不同的屬性名。關(guān)系中沒有重復(fù)元組,任意一個(gè)元組在關(guān)系中都是唯一的。元組的順序無(wú)關(guān)緊要,即元組的次序可以任意交換。屬性的順序是非排序的,屬性一般是用它的名稱來(lái)標(biāo)識(shí),而不使用它的位置來(lái)標(biāo)識(shí)。屬性必須有不同的屬性名,不同的屬性可來(lái)自同一個(gè)域。所有的屬性值都是原子,不允許屬性又是一個(gè)二維關(guān)系。`稱為屬性,n元關(guān)系有n個(gè)屬性,屬性的名稱要唯一,屬性的取值范圍Di(i=1,...,n)叫值域。例如,R1={(0,a),(0,b),(0,c)}R2={(1,a),(1,b),(1,c)}都是上例D1,D2上的一個(gè)關(guān)系。3.2.3

關(guān)系的性質(zhì)同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-3Relational

Datebase

SystemCourse—Teaching(年級(jí),系,專業(yè),課程教師),,學(xué)期,年,Prerequist(課程 ,前序課程

)。Grade(學(xué)生 ,課程 ,成績(jī))。關(guān)系與關(guān)系模式是關(guān)系數(shù)據(jù)庫(kù)中密切相關(guān)又有所不同的概念。關(guān)系模式描述了關(guān)系的數(shù)據(jù)結(jié)構(gòu)和語(yǔ)義約束,不是集合;而關(guān)系是一個(gè)數(shù)據(jù)集合。關(guān)系模式是相對(duì)穩(wěn)定的;而關(guān)系是隨時(shí)間而變化的,是某一時(shí)刻現(xiàn)實(shí)世界狀態(tài)的真實(shí)反映,是

關(guān)系模式在某一時(shí)刻的“當(dāng)前值”。我們稱一個(gè)關(guān)系模式的,任何一個(gè)“當(dāng)前值”為該關(guān)系模式的關(guān)系實(shí)例。以下,在不引起

的情況下,我們等價(jià)地使用“關(guān)系”和“關(guān)系模式”這兩個(gè)詞。關(guān)系可以用一個(gè)表來(lái)直觀地表示。表的每一列表示關(guān)系的一個(gè)屬性,每一行表示一個(gè)元組。表的每列的名字是一個(gè)屬性名。圖3-1給出了一個(gè)關(guān)系模式“儲(chǔ)蓄(

,城市,區(qū),街道,帳號(hào))”的關(guān)系實(shí)例。例3.1我們可以使用關(guān)系數(shù)據(jù)模型表示圖2-5中的教學(xué)管理數(shù)據(jù)庫(kù),其關(guān)系模式定義如下:Student(

,學(xué)生 ,年級(jí),專業(yè),系),Course(課程名,課程,`學(xué)分,系),同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-4Relational

Datebase

System圖3-1

一個(gè)關(guān)系模式“儲(chǔ)蓄”的關(guān)系實(shí)例。3.2.4

關(guān)系的完整性規(guī)則關(guān)系的兩個(gè)完整性規(guī)則如下:實(shí)體完整性關(guān)系中主關(guān)鍵字的值不能為空或部分為空。參照完整性如果關(guān)系R2的外關(guān)鍵字X與關(guān)系

R1的主關(guān)鍵字相符,則外關(guān)鍵字X的每個(gè)值必須在關(guān)系R1中主關(guān)鍵字的值中找到,或者為空值。3.3

關(guān)系代數(shù)關(guān)系代數(shù)是施加于關(guān)系上的一組集合代數(shù)運(yùn)算,每個(gè)運(yùn)算都以一個(gè)或多個(gè)關(guān)系作為運(yùn)算對(duì)象,并生成另外一個(gè)關(guān)系作為該關(guān)系運(yùn)算的結(jié)果。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-5Relational

Datebase

System傳統(tǒng)的集合運(yùn)算:關(guān)系的并關(guān)系R和關(guān)系S的所有元組合并,再刪去重復(fù)的元組,組成一個(gè)新關(guān)系,稱為R和S的并,記為R

∪S。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-6Relational

Datebase

System傳統(tǒng)的集合運(yùn)算:同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-6Relational

Datebase

System關(guān)系的差關(guān)系R和關(guān)系S的差是由屬于R而不屬于S的所有元組組成的集合,即關(guān)系R中刪去與S關(guān)系中相`

同的元組,組成一個(gè)新關(guān)系,記為R-S。傳統(tǒng)的集合運(yùn)算:關(guān)系的交關(guān)系R和關(guān)系S的交是由既屬于R又屬于S的元組組成的集合,即在兩個(gè)關(guān)系

R與S中取相同的元組,組成一個(gè)新關(guān)系,記為R∩S。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-6Relational

Datebase

System傳統(tǒng)的集合運(yùn)算:關(guān)系的除設(shè)有關(guān)系R(X,Y)與關(guān)系S(Z),其中,X、Y、Z為屬性集合。假

設(shè)Y和Z具有相同的屬性個(gè)數(shù),且對(duì)應(yīng)屬性出自相同域。關(guān)系R(X,Y)除以S(Z)所得的商關(guān)系是關(guān)系R在屬性X上投影的一個(gè)子集,該子集和S(Z)的

積必須包含在R(X,Y)中。記為R÷S。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-6Relational

Datebase

System`同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-7Relational

Datebase

System專門的集合運(yùn)算:選擇從關(guān)系中找出滿足條件的所有元組稱為選擇。

經(jīng)過選擇運(yùn)算得到的結(jié)果元組可以形成新的關(guān)系,其關(guān)系模式不變,但其中元組的數(shù)于或等于原來(lái)的關(guān)系中元組的個(gè)數(shù),它是原關(guān)系的一個(gè)子集。選擇運(yùn)算記為σp(R),其中R為一個(gè)關(guān)系,p為布爾函數(shù),該函數(shù)中可以包含算術(shù)符(<,=,>,≤,≥,≠)和邏輯運(yùn)算符(∧,∨,┑)。`投影從關(guān)系中挑選若干屬性組成新的關(guān)系稱為投影。

這是從列的角度進(jìn)行的運(yùn)算,相當(dāng)于對(duì)關(guān)系進(jìn)行垂直分解。經(jīng)過投影運(yùn)算可以得到一個(gè)新關(guān)系,其關(guān)系所包含的屬性個(gè)數(shù)往往比原關(guān)系少,或者屬性的排列順序不同。如果新關(guān)系中包含重復(fù)元組,則要?jiǎng)h除重復(fù)元組。x投影運(yùn)算記為∏(R),其中R為一個(gè)關(guān)系,x為一組屬性名或?qū)傩孕蛱?hào)組,屬性序號(hào)是對(duì)應(yīng)屬性在關(guān)系中的順序。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-8Relational

Datebase

System`連接連接是將兩個(gè)關(guān)系的屬性名拼接成一個(gè)更寬的關(guān)系,生成的新關(guān)系中包含滿足連接條件的元組。運(yùn)算過程是通過連接條件來(lái)控制的,連接條件中將出現(xiàn)不同關(guān)系中的公共屬性名。連接是對(duì)關(guān)系的結(jié)合。連接記為R

S,其中R和S是兩個(gè)關(guān)系,X

θ

Y為連接條件,θ

為比較運(yùn)算符,當(dāng)θ

為“=”時(shí),稱為等值連接。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-8Relational

Datebase

System自然連接自然連接是除去重復(fù)屬性的等值連接,它是連接運(yùn)算的一個(gè)特例,是最常用的連接運(yùn)算。自然連接記為R*S,其中R和S是兩個(gè)關(guān)系,并且具有一個(gè)或多個(gè)同名屬性。在聯(lián)接運(yùn)算`中,同名屬性一般都是外關(guān)鍵字,否則會(huì)出現(xiàn)重復(fù)數(shù)據(jù)。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-8Relational

Datebase

System圖

3-3

關(guān)系及其專門的關(guān)系運(yùn)算3.4

SQL語(yǔ)言SQL語(yǔ)言已成為關(guān)系數(shù)據(jù)庫(kù)的

語(yǔ)言,它具有以下特點(diǎn):類似于英語(yǔ)自然語(yǔ)言,簡(jiǎn)單易學(xué)。是一種非過程語(yǔ)言。是一種面向集合的語(yǔ)言。既可獨(dú)立使用,又可嵌入到宿主語(yǔ)言中使用。具有查詢、

、定義和控制的

功能。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-9Relational

Datebase

System數(shù)據(jù)定義SQL語(yǔ)言的數(shù)據(jù)定義功能包括建立關(guān)系模式CREATETABLE)、修改關(guān)系模式(ALTER

TABLE)、刪除關(guān)系模式(DROP

TABLE)、建立索引(CREATEINDEX)、刪除索引(DROP

INDEX)等語(yǔ)句。`CREATETABLE語(yǔ)句用來(lái)建立一個(gè)新關(guān)系模式,定義關(guān)系模式的每個(gè)屬性的數(shù)據(jù)類型和長(zhǎng)度。CREATETABLE語(yǔ)句的語(yǔ)法格式為:CREATE

TABLE(關(guān)系名>((列名><列類型>[NOTNULL],…,<列名><列類型>[NOTNULL]),其中,<關(guān)系名>是被建立的關(guān)系的名字,<列名>是被建立關(guān)系的屬性名,<列類型>是屬性的數(shù)據(jù)類型和長(zhǎng)度定義,可選項(xiàng)NOT

NULL表示屬性不能取空值。例3-2

使用如下的CREATE

TABLE語(yǔ)句建立一個(gè)EMPLOYEE關(guān)系:CREATE

TABLE

EMPLOYEE(NAME

VARCHAR(15),/*具有最大15個(gè)字節(jié)的可變長(zhǎng)字符串*/SSN

CHAR(9),:/*具有9個(gè)字節(jié)的固定長(zhǎng)字符串*/BDATE

CHAR(9),/*具有9個(gè)字節(jié)的固定長(zhǎng)字符串*/ADDRESS

VARCHAR(30),/*具有最大30個(gè)字節(jié)的可變長(zhǎng)字符串*/SEX

CHAR(1),/*具有1個(gè)字節(jié)的固定長(zhǎng)字符中*/SALARY

INTEGER,/*

4字節(jié)的整數(shù)*/SUPERSSN

CHAR(9),/*具有9個(gè)字節(jié)的固定長(zhǎng)字符串*/DNO

INTEGER

/*

4字節(jié)的整數(shù)*/)。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-10Relational

Datebase

SystemALTERTABlE語(yǔ)句用來(lái)在一個(gè)關(guān)系模式中增加一個(gè)屬性。每個(gè)關(guān)系元組新增屬性的值為空值。ALTERTABLE語(yǔ)句的語(yǔ)法格式是:AITERTASLE<關(guān)系名>ADD<列名)<列類型>。例3-3在EMPLOYEE關(guān)系模式中增加一個(gè)屬性JOB,相應(yīng)的語(yǔ)句為:ALTER

TABLEEMPLOYEE

ADD

JOB

VARCHAR(12)。DROP

TABLE語(yǔ)句用來(lái)刪除一個(gè)關(guān)系。DROP

TABLE語(yǔ)句的語(yǔ)法格式是:DROP

TABLE<關(guān)系名>。我們可以使用語(yǔ)句DROP

TABLE

DEPENDENT刪除關(guān)系DEPENDENT。CREATEINDEX用來(lái)在一個(gè)指定關(guān)系的指定屬性上建立一個(gè)索引。CREATE

INDEX語(yǔ)句的語(yǔ)法格式是:CREATE[UNIQUE]INDEX(索引名>ON<關(guān)系名>(<列名)[ORDER],..,<列名)[ORDER])[CLUSTER],其中,<關(guān)系名)是被建立索引的關(guān)系的名字,<索引名>是建立的索引的名字,<列名)是索引屬性名。語(yǔ)句的可選項(xiàng)UNIQUE表示索引屬性或?qū)傩越M是鍵屬性,即不允許重復(fù)值出現(xiàn)。語(yǔ)句的可選項(xiàng)ORDER表示ASC和DESC之一。如果一個(gè)屬性<列名>被標(biāo)記以ASC,則索引按照這個(gè)屬性值的遞增順序排序

。反之,如果一個(gè)屬性<列名)被標(biāo)記以DESC,則索引按照這個(gè)屬性值的遞減順序排序

。ORDER的缺省值等價(jià)于ASC。語(yǔ)句中的可選項(xiàng)CLUSTER表示所建立的索引是否

索引。例3-4在EMPLOYEE關(guān)系上以SSN屬性為索引屬性,建立一個(gè)

索引,索引文件名字為SSN_INDEX,并說(shuō)明SSN是鍵屬性,索引按照SSN的值遞增排序,相應(yīng)的SQL語(yǔ)句為:CREATE

UNIQUE

INDEX

SSN_INDEX

ON

EMPLOYEE(NAMEASC)CLUSTER。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-11Relational

Datebase

System索引可以

態(tài)地建立和刪除。DORP

INDEX語(yǔ)句用來(lái)刪除索引。DORP

INDEX語(yǔ)句的語(yǔ)法格式是:DROP

INDEX<索引名)。3.4.2

數(shù)據(jù)查詢SQL語(yǔ)言的數(shù)據(jù)查詢語(yǔ)句`

的語(yǔ)法格式是:SELECT[DISTINCT]<屬性表>FROM

Rl[<別名>]”…,Rn[<別名)]WHERE

Ψ[GROUP

BY<分組屬性表>[HAVING<分組選擇條件>]] [ORDER

BY<列名)[<ORDER)],…,<列名)[<ORDER>]],其中,Rl,…,Rn是n個(gè)不同的關(guān)系,(別名>是為FROM從句中的關(guān)系指定的簡(jiǎn)化的別名,(屬性表>是結(jié)果關(guān)系的屬性表,Ψ是條件表達(dá)式,由邏輯運(yùn)算符∧、∨、┑和算術(shù)比較符=、≠、≤、≥、<、>、常值和屬性名等構(gòu)成??蛇x項(xiàng)DISTINCT表示查詢結(jié)果集合中不出現(xiàn)重復(fù)元組。可選從句GROUPBY(分組屬性表>表示把結(jié)果關(guān)系按照<分組屬性表>中的屬性值分組。可選從句GROUPBY<分組屬性表>HAVING(分組選擇條件>表示把結(jié)果關(guān)系按照<分組屬性表)中的屬性值和<分組選擇條件>分組。ORDER

BY從句實(shí)現(xiàn)查詢結(jié)果的排序,<列名>為排序?qū)傩裕?ORDER>與建立索引語(yǔ)句中的<ORDER>意義相同。下邊用幾個(gè)查詢實(shí)例來(lái)說(shuō)明SQL語(yǔ)言的查詢語(yǔ)句SELECT的功能和用法。同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-12Relational

Datebase

System例3-5(簡(jiǎn)單查詢1)對(duì)于每個(gè)在“哈爾濱”進(jìn)行的工程項(xiàng)目,列

出工程項(xiàng)目號(hào)、所屬部門號(hào)、該部門

的名字、生日和地址,相應(yīng)的查詢語(yǔ)句為:SELECT

PNUMBER,DNUM,NAME,BDATE,ADDRESS

FROMPROJECT,DEPARTMENT,EMPLOYEEWHEREDNUM=DNUMBER

AND

`MGBSSN=SSN

AND

PLOCATION=“哈爾濱”。例3-6(簡(jiǎn)單查詢2)列出每一個(gè) 及其直接 的名字,相應(yīng)的查詢語(yǔ)句為:SELECT

E.NAME,S.NAME

FROM

EMPLOYEE

E

SWHERE

E.SUFERSSN=S.SSN在例3-6中,EMPLOYEE關(guān)系具有兩個(gè)別名E和S。我們可以認(rèn)為E和S是EMPLOYEE關(guān)系的兩個(gè)不同的副本。例3-7

(包含集合操作的查詢)

對(duì)于每個(gè)工程項(xiàng)目,如果張平是這個(gè)項(xiàng)目的工作者或張平是管轄這個(gè)項(xiàng)目的部門的 ,則列出這個(gè)項(xiàng)目的 ,相應(yīng)的查詢語(yǔ)句為:(SELECT

PNUMBERFROM

PROJECT,DEPARTMENT,EMPLOYEEWHEREDNUM=DNUMBER

AND

MGRSSN=SSN

AND

NAME;“張平”

)

UNION(SELECT

PNUMBER

FROMP

ROJECT,WORKS_ON,EMPLOYEEWHERE

PNUMBER=PNO

AND

ESSN=SSN

AND

NAME=“張平”

)同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-13Relational

Datebase

System`SQL語(yǔ)言允許嵌套查詢,即p允許在SELECT語(yǔ)句的

WHERE從句中出現(xiàn)另一個(gè)SELECT語(yǔ)句和集合比較操作。SQl語(yǔ)言嵌套查詢的嵌套級(jí)數(shù)可以很多。例3-8(嵌套查詢1)例3-7的查詢可以改寫為如下的嵌套查詢:SELECT

DISTINCT

PNUMBERFROM

PROJECTWHERE

PNUMBER

IN

(SELECT

PNUMBERFROM

DEPARTMENT,EMPLOYEEWHERE

DNUM=DNUMBER

AND

MGRSSN=

SSNAND

NAME=“張平”)ORPNUMBER

IN(SELECT

PNUMBER

FROM

WORKS_ON,EMPLOYEEWHERE

PNUMBER=PNO

AND

ESSN=SSN

AND

NAME=“張平”)3.4.3

數(shù)據(jù)SQL語(yǔ)言提供了三個(gè)數(shù)據(jù)

語(yǔ)句,實(shí)現(xiàn)關(guān)系元組的

、刪e除和修改。下邊是這三個(gè)語(yǔ)句的語(yǔ)法格式定義:元組語(yǔ)句的語(yǔ)法形式是INSERT

INTO<關(guān)系名>[(<列名>,...<列名>)](VALUES(<常值>”...,<常值>))|

SELEGT語(yǔ)句修改元組語(yǔ)句的語(yǔ)法形式是:UPDATE<關(guān)系名>

SET(列名)=<常值>”...,(列名)=<常值>[WHERE<條件表達(dá)式>]刪除元組語(yǔ)句的語(yǔ)法形式是:DELETE

FROM<關(guān)系名>[WHERE(條件表達(dá)式>]同濟(jì)大學(xué)CDHK機(jī)械工程系Prof.

Dr.-Ing

Bin

Shen3-14Relational

Datebase

System下邊我們給出幾個(gè)關(guān)系數(shù)據(jù)庫(kù)上的數(shù)據(jù)

實(shí)例。例3-9

為EMPLOYEE關(guān)系增加一個(gè)元組,相應(yīng)的語(yǔ)句為:INSERT

INTO

EMPIOYEE

VALUES(“王明”,“655325678”,“1950年7月11日”,“哈爾濱市南崗區(qū)學(xué)府路24號(hào)”,“男”,“872”,“655678887”,“5”)。例3-10

建立新關(guān)系EMPLOYEE_LS`,并把EMPLOYEE關(guān)系中工資低于300元的

到這個(gè)新關(guān)系,相應(yīng)的語(yǔ)句為:CREATETABLE

EMPLOYEE_LS(NAME

VARCHAR(10),SSN

INTEGER,SALARY

INTEGER)。INSERT

INTO

EMPLOYEE_LS(NAME,SSN,SALARY)SELECT

NAME,SSN,SALARY

FROM

EMPLOYEEWHERE

SALARY<300。例3-11

把PROJECT關(guān)系中的工程項(xiàng)目10的地址和所屬部門號(hào)分別修改為

”和5;相應(yīng)的語(yǔ)句為:UPDATE

PROJECT SET

PLOCATION=“

”,DNUM=5WHERE

PNUMBER=10。的工資提高lO%,相應(yīng)的語(yǔ)句為:例3-12把在研究部工作的所有UPDATE

EMPLOYEESET

SALARY=SALARY*1.1WHERE

DNO

IN(SELECT

DNUMSER

FROM

DEPARTMENT

WHEREDNA

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論