數(shù)據(jù)庫(kù)管理系統(tǒng)的五種功能 為什么數(shù)據(jù)庫(kù)系統(tǒng)具有數(shù)據(jù)與程序的獨(dú)立性?
為什么數(shù)據(jù)庫(kù)系統(tǒng)具有數(shù)據(jù)與程序的獨(dú)立性?數(shù)據(jù)獨(dú)立性:指應(yīng)用程序和數(shù)據(jù)之間的依賴程度低,相互影響很小。數(shù)據(jù)獨(dú)立分為物理數(shù)據(jù)獨(dú)立和邏輯數(shù)據(jù)獨(dú)立:1.數(shù)據(jù)的物理獨(dú)立性是指應(yīng)用程序?qū)?shù)據(jù)存儲(chǔ)結(jié)構(gòu)的依賴性;2.
為什么數(shù)據(jù)庫(kù)系統(tǒng)具有數(shù)據(jù)與程序的獨(dú)立性?
數(shù)據(jù)獨(dú)立性:指應(yīng)用程序和數(shù)據(jù)之間的依賴程度低,相互影響很小。
數(shù)據(jù)獨(dú)立分為物理數(shù)據(jù)獨(dú)立和邏輯數(shù)據(jù)獨(dú)立:
1.數(shù)據(jù)的物理獨(dú)立性是指應(yīng)用程序?qū)?shù)據(jù)存儲(chǔ)結(jié)構(gòu)的依賴性;
2.數(shù)據(jù)的高度物理獨(dú)立性意味著當(dāng)數(shù)據(jù)的物理結(jié)構(gòu)發(fā)生變化時(shí),應(yīng)用程序可以正常工作,無(wú)需修改。
為什么會(huì)有數(shù)據(jù)獨(dú)立性?
1、因?yàn)閿?shù)據(jù)庫(kù)管理系統(tǒng)可以提供數(shù)據(jù)的物理結(jié)構(gòu)和邏輯結(jié)構(gòu)之間的映射或轉(zhuǎn)換功能。這種數(shù)據(jù)映射功能使應(yīng)用程序能夠根據(jù)數(shù)據(jù)的邏輯結(jié)構(gòu)進(jìn)行設(shè)計(jì),一旦數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)發(fā)生變化,系統(tǒng)可以通過(guò)修改其映像來(lái)適應(yīng)變化。因此,數(shù)據(jù)物理結(jié)構(gòu)的改變不會(huì)影響應(yīng)用程序的正確執(zhí)行。
數(shù)據(jù)庫(kù)系統(tǒng)之所以具有較高的數(shù)據(jù)邏輯獨(dú)立性,是因?yàn)樗軌蛱峁?shù)據(jù)的全局邏輯結(jié)構(gòu)和局部邏輯結(jié)構(gòu)之間的映射和轉(zhuǎn)換功能。
2.這種數(shù)據(jù)映射功能使得數(shù)據(jù)庫(kù)可以根據(jù)數(shù)據(jù)的全局邏輯結(jié)構(gòu)來(lái)設(shè)計(jì),而應(yīng)用程序可以根據(jù)數(shù)據(jù)的局部邏輯結(jié)構(gòu)來(lái)設(shè)計(jì)。這樣,當(dāng)全局邏輯結(jié)構(gòu)中的一些數(shù)據(jù)結(jié)構(gòu)發(fā)生變化時(shí),即使那些與變化相關(guān)的局部邏輯結(jié)構(gòu)受到影響,也可以通過(guò)修改全局邏輯結(jié)構(gòu)的鏡像來(lái)降低影響程度,使得數(shù)據(jù)的局部邏輯結(jié)構(gòu)基本保持不變。
擴(kuò)展數(shù)據(jù):
數(shù)據(jù)獨(dú)立性的概念背景:
數(shù)據(jù)庫(kù)結(jié)構(gòu)在邏輯上可以分為三層:外部模式、內(nèi)部模式和概念模式。為了提高數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)獨(dú)立性,DBMS在這三種模式之間提供了兩層映像。作為數(shù)據(jù)庫(kù)系統(tǒng)的基本特征,數(shù)據(jù)和程序的獨(dú)立性依賴于這三級(jí)模式和兩級(jí)映像。
概念模式(Conceptual sch
通俗的說(shuō)下,數(shù)據(jù)庫(kù)SQL有什么用?
SQL的全稱是 "結(jié)構(gòu)化查詢語(yǔ)言 "SQL(結(jié)構(gòu)化查詢L語(yǔ)言是一種數(shù)據(jù)庫(kù)查詢和編程語(yǔ)言,用于訪問(wèn)數(shù)據(jù)和查詢、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。SQL也是數(shù)據(jù)庫(kù)腳本文件的擴(kuò)展。SQL是一種高級(jí)的非過(guò)程化編程語(yǔ)言,它允許用戶在高級(jí)數(shù)據(jù)結(jié)構(gòu)上工作。它不需要用戶指定數(shù)據(jù)的存儲(chǔ),也不需要用戶知道數(shù)據(jù)的具體存儲(chǔ),因此底層結(jié)構(gòu)完全不同的不同數(shù)據(jù)庫(kù)系統(tǒng)可以使用相同的SQL語(yǔ)言作為數(shù)據(jù)輸入和管理的接口。它將記錄集作為操作對(duì)象,所有SQL語(yǔ)句都接受該記錄集作為輸入,并將該記錄集作為輸出返回。這個(gè)set特性允許一個(gè)SQL語(yǔ)句的輸出作為另一個(gè)SQL語(yǔ)句的輸入,因此SQL語(yǔ)句可以嵌套,這使得它非常靈活和強(qiáng)大。在大多數(shù)情況下,在其他語(yǔ)言中,需要一大段程序才能實(shí)現(xiàn)的功能,只需要一條SQL語(yǔ)句就可以實(shí)現(xiàn),這也意味著非常復(fù)雜的語(yǔ)句也可以用SQL語(yǔ)言編寫(xiě)。結(jié)構(gòu)化查詢語(yǔ)言是由IBM 它的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)SYSTEM R,它的前身是SQUARE language。SQL語(yǔ)言結(jié)構(gòu)簡(jiǎn)單,功能強(qiáng)大,簡(jiǎn)單易學(xué),因此自1981年由IBM推出以來(lái),得到了廣泛的應(yīng)用。現(xiàn)在無(wú)論是Oracle、Sybase、Informix、SQL Server等大型數(shù)據(jù)庫(kù)管理系統(tǒng),還是Visual Foxporo、PowerBuilder等PC上常用的數(shù)據(jù)庫(kù)開(kāi)發(fā)系統(tǒng),都支持SQL作為查詢語(yǔ)言。美國(guó)國(guó)家標(biāo)準(zhǔn)局(ANSI)和國(guó)際標(biāo)準(zhǔn)化組織(ISO)制定了SQL標(biāo)準(zhǔn)。ANSI是美國(guó)工商團(tuán)體組織,負(fù)責(zé)制定美國(guó)商業(yè)和通信標(biāo)準(zhǔn)。ANSI還是ISO和國(guó)際電工委員會(huì)(IEC)的成員。ANSI發(fā)布與國(guó)際標(biāo)準(zhǔn)組織相對(duì)應(yīng)的美國(guó)標(biāo)準(zhǔn)。1992年,ISO和IEC發(fā)布了SQL的國(guó)際標(biāo)準(zhǔn),稱為SQL-92。ANSI發(fā)布的對(duì)應(yīng)標(biāo)準(zhǔn)是ANSI SQL-92。ANSI SQL-92有時(shí)也稱為ANSI SQL。盡管不同的關(guān)系數(shù)據(jù)庫(kù)使用的SQL版本存在一些差異,但大多數(shù)都遵循ANSI SQL標(biāo)準(zhǔn)。SQL Server使用ANSI SQL-92的擴(kuò)展集,稱為T(mén)-SQL,它遵循ANSI制定的SQL-92標(biāo)準(zhǔn)。SQL語(yǔ)言由四部分組成:※數(shù)據(jù)定義語(yǔ)言(DDL),如:CREATE,DROP,AL。之三和其他聲明。※數(shù)據(jù)操作語(yǔ)言(DML),例如插入、更新和刪除語(yǔ)句?!鶖?shù)據(jù)查詢語(yǔ)言(DQL),如SELECT語(yǔ)句。數(shù)據(jù)控制語(yǔ)言(DCL),如授權(quán)、撤銷(xiāo)、提交、回滾等。※.SQL語(yǔ)言包括三種主要編程語(yǔ)言的語(yǔ)句:數(shù)據(jù)定義語(yǔ)言(DDL)、數(shù)據(jù)操作語(yǔ)言(DML)和數(shù)據(jù)控制語(yǔ)言(DCL)。