第4章關(guān)系數(shù)據(jù)庫_第1頁
第4章關(guān)系數(shù)據(jù)庫_第2頁
第4章關(guān)系數(shù)據(jù)庫_第3頁
第4章關(guān)系數(shù)據(jù)庫_第4頁
第4章關(guān)系數(shù)據(jù)庫_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第4章關(guān)系數(shù)據(jù)庫

4.1關(guān)系模型及其定義4.1.1關(guān)系數(shù)據(jù)結(jié)構(gòu)4.1.2關(guān)系操作概述

4.1.3關(guān)系的完整性

4.2關(guān)系代數(shù)4.2.1傳統(tǒng)的集合運算

4.2.2專門的關(guān)系運算

4.2.3用關(guān)系代數(shù)表示檢索的例子

4.1關(guān)系模型及其定義

4.1.1關(guān)系數(shù)據(jù)結(jié)構(gòu)1.關(guān)系的數(shù)學(xué)定義1)域的定義:域是一組具有相同數(shù)據(jù)類型的值的集合。2)笛卡兒積(CartesianProduct)的定義:給定一組域D1,D2,…,Dn,這些域中可以有相同的部分,則笛卡兒積為:

D1×D2×…×Dn={(d1,d2,…dn)|di∈Di,i=1,2,…,n}.其中:每一個元素(d1,d2,…,dn

)稱為一個n元組,簡稱元組。元素中的每一個值di稱作一個分量)。

例如給出三個域:D1=姓名={王平,李麗,張曉剛};D2=性別={男,女};D3=年齡={19,20}.則D1,D2,D3的笛卡兒積為D1×D2×D3

姓名性別年齡王平男19王平男20王平女19王平女20李麗男19李麗男20李麗女19李麗女20張曉剛男19張曉剛男20張曉剛女19張曉剛女201.關(guān)系的數(shù)學(xué)定義3)關(guān)系(Relation)的定義:D1×D2×…×Dn的子集稱作在域D1,D2,…,Dn上的關(guān)系,表示為:R(D1,D2,…,Dn).

這里:R表示關(guān)系的名字,n是關(guān)系的目或度。從D1×D2×D3中取出有用的元組,所構(gòu)造的學(xué)生關(guān)系如表所示姓名性別年齡王平男20李麗女20張曉剛男192.關(guān)系中的基本名詞

1)元組:關(guān)系表中的每一橫行稱作一個元組,組成元組的元素為分量。

2)屬性:關(guān)系中的每一列稱為一個屬性。

3)候選碼、主碼:若關(guān)系中的某一屬性組(或單個屬性)的值能惟一地標(biāo)識一個元組,則稱該屬性組(或?qū)傩裕楹蜻x碼。若關(guān)系的候選碼中只包含一個屬性,則稱它為單屬性碼;若候選碼是由多個屬性構(gòu)成的,則稱為它為多屬性碼。當(dāng)一個關(guān)系有多個候選碼時,應(yīng)選定其中的一個候選碼為主碼。(如課程名,課程號在課程表中都是候選碼)4)全碼:若關(guān)系中只有一個候選碼,且這個候選碼中包括全部屬性,則這種候選碼為全碼。

5)主屬性和非主屬性:關(guān)系中,候選碼中的屬性稱為主屬性,不包含在任何候選碼中的屬性稱為非主屬性。

3.數(shù)據(jù)庫中關(guān)系的類型

1)基本表:關(guān)系數(shù)據(jù)庫中實際存在的表,是實際存儲數(shù)據(jù)的邏輯表示。

2)視圖表:視圖表是由基本表或其他視圖表導(dǎo)出的表。

3)查詢表:查詢表是指查詢結(jié)果表或查詢中生成的臨時表。

4.數(shù)據(jù)庫中基本關(guān)系的性質(zhì)

1)同一屬性的數(shù)據(jù)具有同質(zhì)性.

2)同一關(guān)系的屬性名具有不能重復(fù)性。

3)關(guān)系中的列位置具有順序無關(guān)性。

4)關(guān)系具有元組無冗余性。

5)關(guān)系中的元組位置具有順序無關(guān)性。

6)關(guān)系中每一個分量都必須是不可分的數(shù)據(jù)項。5.關(guān)系模式的定義

形式化地表示為:R(U,D,Dom,F(xiàn))

其中:R為關(guān)系名,它是關(guān)系的形式化表示;U為組成該關(guān)系的屬性集合;D為屬性組U中屬性所來自的域;Dom為屬性向域的映象的集合;F為屬性間數(shù)據(jù)的依賴關(guān)系集合。

關(guān)系模式通常可以簡單記為:

R(U)或R(A1,A2,…,An).

其中:R為關(guān)系名,A1,A2,…,An為屬性名。6.關(guān)系數(shù)據(jù)庫

在某一應(yīng)用領(lǐng)域中,所有實體集及實體之間聯(lián)系所形成關(guān)系的集合就構(gòu)成了一個關(guān)系數(shù)據(jù)庫。

4.1.2關(guān)系操作概述關(guān)系操作的基本內(nèi)容

關(guān)系操作包括數(shù)據(jù)查詢、數(shù)據(jù)維護和數(shù)據(jù)控制三大功能.

關(guān)系操作的數(shù)據(jù)查詢和數(shù)據(jù)維護功能使用關(guān)系代數(shù)中的選擇(Select)、投影(Project)、連接(Join)、除(Divide)、并(Union)、交(Intersection)、差(Difference)以及廣義笛卡兒積(ExtendedCartesianProduct)8種操作。2.關(guān)系操作的特點(1)關(guān)系操作語言操作一體化關(guān)系語言具有數(shù)據(jù)定義、查詢、更新、控制一體化的特點。(2)關(guān)系操作的方式是一次一集合方式(3)關(guān)系操作語言是高度非過程化的語言

3.關(guān)系操作語言的種類(1)關(guān)系代數(shù)語言

用對關(guān)系的運算來表達查詢要求的語言。(2)關(guān)系演算語言

用查詢得到的元組應(yīng)滿足的謂詞條件來表達查詢要求的語言。關(guān)系演算語言又可以分為元組演算語言和域演算語言兩種:元組演算語言的謂詞變元的基本對象是元組變量,例如APLHA語言;域演算語言的謂詞變元的基本對象是域變量,QBE(QueryByExample)是典型的域演算語言。(3)基于映象的語言

具有關(guān)系代數(shù)和關(guān)系演算雙重特點的語言。SQL是基于映象的語言。SQL包括數(shù)據(jù)定義、數(shù)據(jù)操作和數(shù)據(jù)控制三種功能,具有語言簡潔,易學(xué)易用的特點,它是關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言和主流語言。4.1.3關(guān)系的完整性1.關(guān)系模型的實體完整性(EntityIntegrity)

若屬性A是基本關(guān)系R的主屬性,則屬性A的值(各分量)不能為空值。

說明如下:

1)實體完整性能夠保證實體的唯一性。

2)實體完整性能夠保證實體的可區(qū)分性?,F(xiàn)有如下關(guān)系S(學(xué)號,姓名,性別,專業(yè)號,年齡)C(課程號,課程名,學(xué)分);SC(學(xué)號,課程號,成績).

現(xiàn)有用戶向數(shù)據(jù)庫中輸入如下記錄,是否插入成功Insertintos(‘01’,’chen’,’女’,’07’,22)----successInsertintoc(‘’,’數(shù)據(jù)庫原理及應(yīng)用’,3)Insertintosc(’01’,’’,68)Insertintosc(’02’,’01’,90)2.關(guān)系模型的參照完整性

1)外碼和參照關(guān)系

設(shè)F是基本關(guān)系R的一個或一組屬性,但不是關(guān)系R的主碼(或候選碼)。如果F與基本關(guān)系S的主碼相對應(yīng),則稱F是R的外碼,并稱R為參照關(guān)系,S為被參照關(guān)系或目標(biāo)關(guān)系。例如,“基層單位數(shù)據(jù)庫”中有“職工”和“部門”兩個關(guān)系,其關(guān)系模式如下:

職工(職工號,姓名,工資,性別,部門號);

部門(部門號,名稱,領(lǐng)導(dǎo)人號).

其中:主碼用下劃線標(biāo)出,外碼用紅色標(biāo)出。再例,在學(xué)生課程庫中,關(guān)系模式表示為:

學(xué)生(學(xué)號,姓名,性別,專業(yè)號,年齡);

課程(課程號,課程名,學(xué)分);

選修(學(xué)號,課程號,成績).

其中:主碼用下劃線標(biāo)出。2)參照完整性規(guī)則

若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的主碼Ks相對應(yīng)(基本關(guān)系R和S不一定是不同的關(guān)系),則對于R中每個元組在F上的值必須取空值(F的每個屬性值均為空值)或者等于S中某個元組的主碼值。學(xué)生(學(xué)號,姓名,性別,專業(yè)號,年齡)專業(yè)(專業(yè)號,專業(yè)名)學(xué)生關(guān)系中每個元組的”專業(yè)號”屬性只能是下面的兩類型值:1)空值:該學(xué)生未分配專業(yè)2)非空值:該值必須是專業(yè)關(guān)系中某個元組的”專業(yè)號”值。表示該學(xué)生分配到一個存在的專業(yè)中參照完整性S(學(xué)號,姓名,姓名,專業(yè)號,年齡)C(課程號,課程名,學(xué)分)SC(學(xué)號,課程號,成績)INSERTINTOC(‘01’,’數(shù)據(jù)庫原理’,3)成功INSERTINTOSC(‘01’,’02’,68)失敗INSERTINTOSC(‘02’,’01’,90)失敗違背實體完整性,沒有違背參照完整性INSERTINTOSC(‘0’,’’,68)失敗假設(shè)數(shù)據(jù)庫中存在關(guān)系模式:Employee(職工號,領(lǐng)導(dǎo)者職工號,姓名)自參照完整性,Insertintoemployee(’01’,’01’,’chen’)insertintoemployee(’02’,’01’,’xia’)成功Insertintoemployee(’03’,’02’,’chen’)Insertintoemployee(’05’,’04’,’chen’)選修關(guān)系中成績在1—100之間某個屬性取值(如課程名)唯一值3用戶定義的完整性。

用戶定義的完整性就是針對某一具體關(guān)系數(shù)據(jù)庫的約束條件,它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。4.2關(guān)系代數(shù)1)集合運算符:∪(并運算),-(差運算),∩(交運算),×(廣義笛卡兒積)。2)專門的關(guān)系運算符:σ(選擇),π(投影),(連接),÷(除)。3)比較運算符:>(大于),≥(大于等于),<(小于),≤(小于等于),=(等于),≠(不等于)。4)邏輯運算符:(非),∧(與),∨(或)。

4.2.1傳統(tǒng)的集合運算

設(shè)關(guān)系R和S具有相同的目n(即兩個關(guān)系都有n個屬性),且相應(yīng)的屬性取自同一個域。

1.并(Union)運算

R∪S={t|tR∨tS}.

R和S并的結(jié)果仍為n目關(guān)系,其數(shù)據(jù)由屬于R或?qū)儆赟的元組組成。

2.差(Difference)運算

R–S={t|tR∧tS}.

R和S差運算的結(jié)果關(guān)系仍為n目關(guān)系,其數(shù)據(jù)由屬于R而不屬于S的所有元組組成。

3.交(Intersection)運算

R∩S={t|tR∧tS}.

運算的結(jié)果關(guān)系仍為n目關(guān)系,其數(shù)據(jù)由既屬于R同時又屬于S的元組組成。交可用差來表示:

R∩S=R–(R–S)

.4.笛卡兒積運算

設(shè)n目和m目的關(guān)系R和S,它們的笛卡兒積是一個(n+m)目的元組集合。元組的前n列是關(guān)系R的一個元組,后m列是關(guān)系S的一個元組。若R有k1個元組,S有k2個元組,則關(guān)系R和關(guān)系S的廣義笛卡兒積應(yīng)當(dāng)有k1×k2個元組。R和S的笛卡兒積表示為:

R×S={trts|trR∧tsS}.傳統(tǒng)集合運算的實例

ABC

ABC

ABCa1b1c1a1b2c2a1b1c1a1b2c2a1b3c2a1b2c2a2b2c1

a2b2c1

a1b3c2RSR∪S

ABC

R.AR.BR.CS.AS.BS.Ca1b1C1a1b1c1a1b2c2a2b2C1a1b1c1a1b3c2

R∩Sa1b2c2a1b2c2a1b2c2a1b3c2ABCa2b2c1a1b2c2a1b2C2a2b2c1a1b3c2R-SR×S

ABabcdecABdbdaacRSR-SR∪S4.2.2專門的關(guān)系運算1.記號說明

(1)關(guān)系模式、關(guān)系、元組和分量

設(shè)關(guān)系模式為R(A1,A2,…,An),它的一個關(guān)系設(shè)為R,tR表示t是R的一個元組,t[Ai]則表示元組t中相對于屬性Ai的一個分量。

(2)域列和域列非

若A={Ai1,Ai2,…,Aik},其中Ai1,Ai2,…,Aik是A1,A2,…,An中的一部分,則A稱為屬性列或域列,t[A]={t[Ai1],t[Ai2],…,t[Aik]}表示元組t在屬性列A上諸分量的集合。則表示{A1,A2,…,An}中去掉{Ai1,Ai2,…,Aik}后剩余的屬性組,它稱為A的域列非。(3)元組連串(Concatenation)

設(shè)R為n目關(guān)系,S為m目關(guān)系,且trR,tSS,則trtS稱為元組的連串。連串是一個(n+m)列的元組,它的前n個分量是R中的一個n元組,后m個分量為S中的一個m元組。(4)屬性的象集(ImagesSet)

給定一個關(guān)系R(X,Z),X和Z為屬性組。定義當(dāng)t[X]=x時,x在R中的象集為:

Zx={t[Z]|tR,t[X]=x}.

上式表示,x在R中的象集為R中Z屬性對應(yīng)分量的集合,而這些分量所對應(yīng)的元組中的屬性組X上的值應(yīng)為x。2.專門關(guān)系運算的定義(1)選擇(Selection)運算

選擇運算又稱為限制運算。選擇運算指在關(guān)系R中選擇滿足給定條件的元組,記作:

σF(R)={t|tR∧F(t)=‘真’}.

其中:F表示選擇條件,是一個邏輯表達式,取值為“真”或“假”。F由邏輯運算符﹁(非)、∧(與)和∨(或)連接各條件表達式組成。

條件表達式的基本形式為:X1θY1.

其中:θ是比較運算符,它可以是>、≥、<、≤、=、≠中的一種;X1和Y1是屬性名、常量或簡單函數(shù);屬性名也可以用它的序號來代替。選擇操作是根據(jù)某些條件對關(guān)系做水平分割,即選取符合條件的元組例如,σ2>ˊ3ˊ(R)表示從R中挑選第2個分量值大于3的元組所構(gòu)成的關(guān)系。書寫時,為了與屬性序號區(qū)別起見,常量用引號括起來,而屬性序號或?qū)傩悦灰靡柪ㄆ饋怼S藐P(guān)系代數(shù)表示下列操作

設(shè)學(xué)生課程數(shù)據(jù)庫,其關(guān)系模式為:

學(xué)生(學(xué)生,姓名,年齡,所在系);

課程(課程號,課程名,學(xué)分);

選課(學(xué)號,課程號,成績).【例4-1】用關(guān)系代數(shù)表示在學(xué)生課程數(shù)據(jù)庫中查詢計算機系的全體學(xué)生的操作。

σ所在系='計算機系'(學(xué)生)【例4-2】用關(guān)系代數(shù)表示在學(xué)生課程數(shù)據(jù)庫中查詢年齡小于20歲的學(xué)生的操作。

σ年齡<20(學(xué)生)(2)投影(Projection)運算

這個操作是對一個關(guān)系進行垂直分割,消去某些列,并重新安排列的順序。

關(guān)系R上的投影是從R中選擇出若干屬性列組成新的關(guān)系,記作:

πA(R)={t[A]|tR}.【例4-3】在學(xué)生課程數(shù)據(jù)庫中,查詢學(xué)生的姓名和所在系。表示為:π姓名,所在系(學(xué)生)例如,π3,1(R)表示關(guān)系R中取第1、3列,組成新的關(guān)系,新關(guān)系中第1列為R的第3列,新關(guān)系的第2列為R的第1列。如果R的每列標(biāo)上屬性名,那么操作符π的下標(biāo)處也可以用屬性名表示。例如,關(guān)系R(A,B,C),那么πC,A(R)與π3,1(R)是等價的。(3)連接運算

連接是從兩個關(guān)系的笛卡兒積中選取屬性間滿足一定條件的元組。記作:

RS={trts|trR∧tsS∧tr[A]θts[B]}.

AθB

其中:A和B分別為R和S上度數(shù)相等且可比的屬性組,θ是比較運算符。等值連接表示為:

R

S={trts|trR∧tsS∧tr[A]=ts[B]}.

A=B

說明:1.

也可以寫成。2.≡σ2<4(R×S)自然連接是一種特殊的等值連接:

RS={trts|trR∧tsS∧tr[A]=ts[A]}自然連接(naturaljoin)

兩個關(guān)系R和S的自然連接操作具體計算過程如下:①計算R×S;②設(shè)R和S的公共屬性是A1,…,AK,挑選R×S中滿足R.A1=S.A1,…,R.AK=S.AK的那些元組;③去掉S.A1,…,S.AK這些列。定義:其中i1,…,im為R和S的全部屬性,但公共屬性只出現(xiàn)一次。

≡【例4-4】設(shè)學(xué)生和選課關(guān)系中的數(shù)據(jù)如下,學(xué)生與選課之間的笛卡兒積、等值連接和自然連接的結(jié)果如表所示。

學(xué)號姓名年齡所在系

學(xué)號課程名成績98001張三20計算機系98001數(shù)據(jù)庫6298005李四21數(shù)學(xué)系98001數(shù)據(jù)結(jié)構(gòu)73

98005微積分80學(xué)生

選課學(xué)生.學(xué)號姓名年齡所在系選課.學(xué)號課名成績980019800198001980059800598005張三張三張三李四李四李四202020212121計算機系計算機系計算機系數(shù)學(xué)系數(shù)學(xué)系數(shù)學(xué)系980019800198005980019800198005數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)微積分?jǐn)?shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)微積分627380627380學(xué)生×選課

學(xué)生.學(xué)號姓名年齡所在系選課.學(xué)號課名成績980019800198005張三張三李四202021計算機系計算機系數(shù)學(xué)系980019800198005數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)微積分627380學(xué)生.學(xué)號姓名年齡所在系課名成績980019800198005張三張三李四202021計算機系計算機系數(shù)學(xué)系數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)微積分627380學(xué)生選課

學(xué)生.學(xué)號=選課.學(xué)號學(xué)生選課

ABCA1A1A2A2B1B2B3B456812BEB1B2B3B3B5371022關(guān)系R關(guān)系SAR.BCS.BEA1A1A1A1A2B1B1

B2

B2

B355668B2B3

B2

B3

B371071010一般連接RSC<EABCEA1A1A2A2B1B2B3B3568837102自然連接RSABCA1A1A2A2B1B2B3B456812BEB1B2B3B3B5371022關(guān)系R關(guān)系S兩個關(guān)系R和S在做自然連接時,選擇兩個關(guān)系在公共屬性上值相等的元組構(gòu)成新的關(guān)系。此時,關(guān)系R中某些元組有可能在S中不存在公共屬性上值相等的元組,從而造成R中這些元組在操作時被舍棄了,同樣,S中某些元組也可能被舍棄。如果把舍棄的元組也保存在結(jié)果關(guān)系中,而在其他屬性上填空值(Null),那么這種連接就叫做外連接(Outerjoin)。如果只把左邊關(guān)系R中要舍棄的元組保留就叫做左外連接(Leftouterjoin或Leftjoin),如果只把右邊關(guān)系S中要舍棄的元組保留就叫做右外連接(Rightouterjoin或Rightjoin)。ABCEa1a1a2a2a2NULLb1b2b3b3b4b5568812NULL37102NULL2ABCEa1a1a2a2a2b1b2b3b3b456881237102NULLABCEa1a1a2a2NULLb1b2b3b3b55688NULL371022ABCa1a1a2a2b1b2b3b456812BEb1b2b3b3b5371022關(guān)系R關(guān)系S外連接左外連接右外連接RSABCabcbafcbdABCbafdad

R1=R-S,R2=R∪S,R3=R∩S,R4=R×SRSABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a2b2c1R1=R-S,R2=R∪S,R3=R∩S,R4=ПA,B(σB=‘b1’(R))RSTABadbeccABdabadcACbbccbdR1=R-S,R2=R∪S,R3=R∞T,R4=R∞T,R5=ПA(R),R6=σA=C(R×T)

A<C(4)除(Division)運算

給定關(guān)系R(X,Y)和S(Y,Z),其中X,Y,Z為屬性組。R中的Y與S中的Y可以有不同的屬性名,但必須出自相同的域集。R與S的除運算得到一個新的關(guān)系P(X),P是R中滿足下列條件的元組在X屬性列上的投影:元組在X上的分量值x的象集Yx包含S在Y上的投影,即:

R÷S={tr[X]|tr

R∧πY(S)Yx}.

其中的Yx為x在R中的象集,x=tr[X]。

關(guān)系除法運算分下面4步進行:

1)將被除關(guān)系的屬性分為象集屬性和結(jié)果屬性:與除關(guān)系相同的屬性屬于象集屬性,不相同的屬性屬于結(jié)果屬性。

2)在除關(guān)系中,對與被除關(guān)系相同的屬性(象集屬性)進行投影,得到除目標(biāo)數(shù)據(jù)集。

3)將被除關(guān)系分組,原則是,結(jié)果屬性值一樣的元組分為一組。

4)逐一考察每個組,如果它的象集屬性值中包括除目標(biāo)數(shù)據(jù)集,則對應(yīng)的結(jié)果屬性值應(yīng)屬于該除法運算結(jié)果集。例關(guān)系做除法的例子?!纠?-5】給出選課、選修課和必修課3個關(guān)系,它們的關(guān)系模式為:選課(學(xué)號,課號,成績);選修課(課號,課名);必修課(課號,課名).選課選修課學(xué)號課號成績

課號課名S1C1AC2計算機圖形學(xué)S1C2B必修課S1C3BS2C1A課號科名S2C3BC1數(shù)據(jù)結(jié)構(gòu)S3C1BC3操作系統(tǒng)S3C3B選課÷選修課S4C1AS4C2A學(xué)號成績S5C2BS1BS5C3BS4AS5C1AS5B學(xué)號成績

學(xué)號S3BS1

S2S3S5選課÷必修課π學(xué)號,課號(選課)÷必修課

4.2.3用關(guān)系代數(shù)表示檢索的例子學(xué)生選課庫的關(guān)系模式為:

學(xué)生(

溫馨提示

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

評論

0/150

提交評論