Historyofinvention
Netteddatabaseandhierarchicaldatabasehavesolvedtheproblemofdataconcentrationandsharing,butthereisstillagreatlackofdataindependenceandabstractionlevel.Whenusersaccessthesetwodatabases,theystillneedtoclarifythedatastoragestructureandpointouttheaccesspath.Buttherelationaldatabasethatappearedlatersolvedtheseproblemsbetter.Relationaldatabasetheoryappearedinthelate1960sandearly1970s.Therelationaldatamodelprovidesthecharacteristicsandfunctionalrequirementsofrelationaloperations,butdoesnotgivespecificgrammaticalrequirementsforthelanguageoftheDBMS.Theoperationoftherelationaldatabaseishighlynon-procedural,usersdonotneedtopointoutaspecialaccesspath,andtheselectionofthepathisdonebytheoptimizationmechanismoftheDBMS.
In1970,IBMresearcherDr.EFCoddpublished"RelationalModelofLargeSharedDataBanks"andproposedtheconceptofrelationalmodel,expoundingtheparadigmtheoryand12standardsformeasuringrelationalsystems,suchasthedefinitionCertainrelationalalgebraoperationsstudiedthefunctionalcorrelationofdataanddefinedthethirdparadigmofrelations,thuspioneeringthestudyofdatabaserelationalmethodsanddatanormalizationtheory.Forthis,hewontheTuringAwardin1981.
Later,Coddpublishedmanymorearticles,layingthefoundationofrelationaldatabase.Therelationalmodelhasastrictmathematicalfoundation,arelativelyhighlevelofabstraction,andissimpleandclear,easytounderstandanduse.Butatthattime,somepeoplethoughtthattherelationalmodelwasanidealizeddatamodel,anditwasunrealistictoimplementaDBMS.Theywereespeciallyworriedthattheperformanceofrelationaldatabaseswasunacceptable.Somepeopleevenregardeditasaseriousthreattothenormalizationworkofmeshdatabasesthatwasinprogressatthattime..Inordertopromoteunderstandingoftheproblem,ACMtooktheleadinorganizingaseminarin1974,duringwhichadebatebetweenthetwofactionsforandagainstrelationaldatabasesledbyCoddandBachmanwaslaunched.Thisfamousdebatepromotedthedevelopmentofrelationaldatabases,whicheventuallybecamethemainstreamofmoderndatabaseproducts.
Sincethen,manypeoplehaveturnedtheirresearchdirectionstorelationalmethods,andrelationaldatabasesystemshaveappearedoneafteranother.
Definition
Therelationaldatamodelisdevelopedbasedontherelationalconceptinsettheory.Boththeentitiesandtheconnectionsbetweenentitiesintherelationalmodelarerepresentedbyasinglestructuretype-relationship.Therelationshipintheactualrelationaldatabaseisalsocalledatable.Arelationaldatabaseiscomposedofseveraltables.
Relationalmodelreferstoadatamodelthatusesatwo-dimensionaltabletorepresententitiesandtheirconnections.
Основни термини
Има 13 основни понятия и основни термини в този релационен модел. Те са:
(1) Връзка: отношение съответства на двумерна таблица, а двумерната таблица е името на връзката.
(2) Кортеж: Arowin на двуизмерна таблица се нарича кортеж.
(3)Attribute:Thecolumnsinthetwo-dimensionaltablearecalledattributes.Thenumberofattributesiscalledthedegreeordegreeoftherelationship.Thevalueofthecolumniscalledtheattributevalue;
(4) (Стойност) Домейн: Диапазонът от стойности на стойността на атрибута е стойностният домейн.
(5) Компонент: стойността на атрибута на колоната, съответстваща на всеки ред, това е стойността на атрибута в кортежа.
(6)Режим на връзка: Дефиницията на реда в двуизмерната таблица, това е описанието на връзката, се нарича режим на връзка. Обикновено се изразява като (атрибут1,атрибут2,...,атрибут), такъв модел на връзката на учителя може да бъде изразен като учител (номер на учител, име, пол, възраст, титла, отдел).
(7)Ключ(код):Ако има атрибут или набор от атрибути, които уникално идентифицират обект във връзка, се нарича ключ на обекта. Atuple, комбинацията от стойности на атрибута са наистина различни.
(8)Candidatekey(candidatecode):Ifthevalueofanattributeintherelationshipcanuniquelyidentifyatuple,ifnoattributecanberemovedfromakeyintherelationship,otherwiseitisnotThekeyofthisrelationshipiscalledthespecifiedcandidatekeyasthecandidatekeyorcandidatecodeoftherelationship.
Например "номерът на ученик" или "номерът на картата на библиотеката" в следната таблица на ученика може да идентифицира уникално двойка, а "номерът на ученик" и "номерът на картата на библиотеката" могат да идентифицират уникално двойката. Тогава "номерът на ученика" и "номерът на картата на библиотеката" могат да се използват като сканирани ключове за връзки със студенти.
ID на ученик | Име | Пол | p>Възраст | Номер на библиотечна карта | Отдел |
S3001 | ZhangMing | Мъж | 22 | B20050101 | Чужд език |
S3002 | LiJing | Жена | 21 | B20050102 | Чужд език |
S4001 | ДжаоЛи | Жена | 21 | B20050301 | Управлявайте |
В таблицата за избор на курсове само групите атрибути "номер на студент" и "номер на курс" могат да идентифицират еднозначно двойка, а ключът на кандидата е (номер на студент, номер на курс).
ID на ученик | CourseID |
S3001 | C1 |
S3001 | C2 |
S3002 | C1 |
S4001 | C3 |
(8)Първичен ключ(първиченкод):Посочете множество за уникално идентифициране на връзката между кандидат ключовете на връзката, след което посоченият кандидат ключ се наричапървичен ключ,или просто първичен ключ,ключова дума,главенкод.Всяка връзка имасамо един първичен ключ,обикновено като по-малка комбинацияyda,въвприбутъка denttable, ако "studentID" е избрано като основа за операция с данни, "studentID "е главният ключ. В таблицата за избор на курсове основният ключ е (номер на студент, номер на курс).
(9)Primaryattributesandnon-primaryattributes:Theattributesincludedinanycandidatekeyintherelationshiparecalledprimaryattributes,andtheattributesnotincludedinanycandidatekeyarenon-primaryattributes.
(10) Пълен ключ или пълен код: колекция от фаллаттрибути в релационен модел.
(11)Foreignkeyorforeigncode:Althoughanattributeinarelationshipisnottheprimarykeyofthisrelationship,oronlytheprimarykey,butitistheprimarykeyofanotherrelationship,itiscalledforeignKeyorforeigncode.
(12)Superkeyorsupercode:Ifanattributeisremovedfromakeyofarelationship,itisstillthekeyoftherelationship,thensuchakeyiscalledthesuperkeyorsupercodeoftherelationship.
(13)Referencerelationshipandreferencedrelationship:refertotworelationshipsthatareconnectedbyforeignkeysandcanbetransformedintoeachother.
Двуизмерна таблица
Релационен модел, полетата се наричат атрибути, стойностите на полето се наричат стойности на атрибути, а типовете записи се наричатрелационни модели. Името на релационната схема е R. Записът се нарича кортеж, а колекцията от кортежи се нарича релация или пример. Обикновено главни букви A, B ,C,... се използват за обозначаване на един атрибут, а малките букви се използват за обозначаване на стойности на атрибути. Броят атрибути в релацията се нарича "номер на елемент", а броят на кортежа се нарича "кардиналност".
Ключ
Ключът, известен още като код, се състои от един или няколко атрибута, разделени на следните типове:
a.Суперключ:АковръзкаАко атрибутът е премахнат от ключ на, все още е ключът на тази връзка и такъв ключ става суперключ.
b.Кандидат-ключове: Суперключовете без допълнителни атрибути се наричат кандидат-ключове. Това означава, че ако искате да изтриете атрибута в кандидат-ключа, това не е суперключ.
c.Първичен ключ: Кандидат ключове, избрани от потребителя като двоен идентификатор, се нарича първичен ключ. Като цяло ключът се отнася до основния ключ.
Дефиниция и характер на връзката
Връзката е съвкупност от двойки с номер на елемент K(K>=1).
Връзката е стандартизирана форма и има следните ограничения:
a.Всяка стойност на атрибут в релацията не е разложима.
b.Едни и същи двойки не са разрешени в отношенията.
c.Редът на цепките не се разглежда във връзката.
d. Атрибутите в кортежа реално не са подредени.
Релационен режим, релационен подрежим и режим на съхранение
Релационен модел, концептуалният режим е колекция от релационни режими. Amode е колекция от релационни подрежими, а вътрешен режим е колекция от режими на съхранение.
1.Релационен режим
Relationalmodeisactuallytherecordtype,including:modename,attributename,valuedomainname,andtheprimarykeyofthemode.Hedoesnotinvolvethedescriptionofphysicalstorage,onlythedescriptionofdatacharacteristics.
2.Подрежим на връзки
Thesub-modeisthedescriptionofthepartofthedatausedbytheuser.Inadditiontopointingouttheuser'sdata,thecorrespondencebetweenthemodeandthesub-modeshouldalsobepointedout.
3.Режим на съхранение
Thebasicorganizationofrelationalstorageisfiles,andtuplesarerecordsinfiles.Sincetherelationalmodelhaskeys,storingarelationcanberealizedbyhashingorindexing.
Три типа правила за интегритет на този модел на взаимоотношения
1. Правила за цялост на обекта
ThisrulerequirestuplesintherelationshipTherecanbenonullvaluesontheattributesthatmakeuptheprimarykey.Ifthereisanullvalue,thentheprimarykeyvaluewillnotbeabletouniquelyidentifythetuple.
2.Правила за референтна цялост
IftheattributesetKistheprimarykeyoftherelationalpatternR1,andKisalsotheforeignkeyoftherelationalpatternR2,thenintherelationshipofR2,thevalueofKistakenThereareonlytwopossibilitiesforthevalue,eithernullvalueorequaltoaprimarykeyvalueintheR1relationship.
Трябва да се обърне внимание при използване на:
a.Theforeignkeyandthecorrespondingprimarykeycanhavedifferentnames,aslongastheyaredefinedinthesamevaluerange.
b.R1 и R2 също могат да бъдат един и същ релационен модел, който представлява връзката между атрибутите.
c.Whethertheforeignkeyvalueisallowedtobeemptyornotdependsonthespecificproblem.
3. Дефинирани от потребителя правила за интегритет
Thisisaconstraintforspecificdataanddependsontheapplicationenvironment.
Формално определение на релационен модел
Един, три компонента: структура на данните, работа с данни и правила за интегритет.
1.Основната структура на данните на релационния моделе релацията.
2.Relationaloperationsaredividedintorelationalalgebraandrelationalcalculus.
3. Три вида правила за интегритет нарелационния модел.
Второ, релационна алгебра
Dataoperationsinrelationaldatabasesaredividedintotwotypes:queryandupdate.Querystatementsareusedforvariousretrievaloperations,andupdateoperationsareusedforinsert,delete,andmodifyoperations.
Relationalquerylanguagesaredividedintotwocategoriesaccordingtotheirtheoreticalbasis:
1.Relationalalgebrallanguage:queryoperations areDMLlanguagesbasedonsetoperations.
2.Relationalcalculationlanguage:queryoperationisbasedontheDMLlanguagepredicatecalculation.
Пет основни операции на релационна алгебра
Relationalalgebraisasetofadvancedoperationswithrelationastheoperationobject.Arelationshipisdefinedasacollectionoftuplesofthesamenumber.Theelementsinthesetaretuples,andtheoperationsinrelationalalgebracanbedividedintotwocategories:
Традиционен набор от операции: обединение, разлика, пресичане и декартово произведение.
Разширени релационни операции: проекция, селекция, връзка и естествена връзка, разделяне.
1.Съюз
TherearetworelationsRandSthathavethesamerelationmode.TheunionofRandSisasetoftuplesbelongingtoRandS,rememberItisR∪S.
Забележка: Rand Shavethe samelementnumber.
2.Разлика
TherearetworelationsRandSthathavethesamerelationmode.ThedifferencebetweenRandSisasetoftuplesthatbelongtoRbutnotS,DenotedasR-S.
Забележка: Rand Shavethe samelementnumber.
3. Декартов продукт
Да предположим, че елементите на отношенията R и Sa са произволни, съответно. Дефинирайте декартовото произведение на Rand Sto като набор от (r+s) кортежи. Първите компоненти (стойности на атрибути) на всеки кортеж идват от набор от R, а последните компоненти идват от набор от S., означени като R × S.
Ако RhasMtuplesandShasntuples,тогава R×Shasm×ntuples.
4.Избор
Findingalltuplesthatmeetthegivenconditionsfromtherelationshipiscalledselection.Theconditionisgivenbyalogicalexpression,andthetupleisselectedifthevalueofthelogicalexpressionistrue.Thisisanoperationperformedfromtheperspectiveofrows,thatis,tuplesareextractedinthehorizontaldirection.Theresultoftheselectionoperationcanformanewrelationship,andtherelationshipmoderemainsunchanged,butthenumberoftuplesislessthanorequaltothenumberoftuplesintheoriginalrelationship,whichisasubsetoftheoriginalrelationship.
Записано като:δF(R)≡{t?tbelongstoR∧F(t)=true}
5.Проекция
SelectfromtherelationshipThenewrelationshipcomposedofseveralattributesiscalledprojection.Thisisthecalculationfromtheperspectiveofthecolumn.Afterprojectionoperation,anewrelationshipcanbeobtained.Thenumberofattributescontainedintherelationshipisoftenlessthanthatoftheoriginalrelationship,ortheattributesarearrangedinadifferentorder.Ifthenewrelationshipcontainsduplicatetuples,theduplicatetuplesmustbedeleted.
Записано като:∏A(R)={t[A]?tbelongstoR}AisttheattributecolumninR.
Например:∏3,1(R)
Четири комбинирани операции на релационна алгебра
1.Кръст
RelationshipRandTheintersectionofSisasetoftuplesthatbelongtoRandS,denotedasR∩S.RandSrequirementsaredefinedonthesamerelationalmodel.
R∩S≡{t?tbelongstoR∧tbelongstoS},RandShavethesamearity.
2.Връзки
Има два вида връзки: θ връзка и F връзка (θ е символ за аритметично сравнение, формула на Fisa).
⑴Присъединете се
ThetajoinistoselecttupleswhoseattributevaluessatisfyacertainθoperationfromtheCartesianproductoftherelationsRandS,denotedas:
R?×iθj?S,къдетоiandjaесерийният номер наthei-thandj-който приписва връзките RandS, съответно.
R?×iθj?S≡δiθ(r+j)(R×S)
Ако θistheequalsign"=", операцията за свързване се нарича "връзка с равна стойност".
⑵Fприсъединяване
TheFjoinoperationistoselecttupleswhoseattributevaluessatisfyacertainformulaFfromtheCartesianproductoftherelationsRandS,denotedas:
R?×F?S, където Fi е формула на формата F1∧F2∧...∧Fn, всяка f е формула на формата iθj, и и са първите релации R и S, съответно Серийният номер на i-този атрибут и j-този атрибут.
3.Естествена връзка
Естествената връзка на отношенията RandS е представена от R?×?S. Специфичният процес на изчисление е следният:
①Изчислете R×S
②Нека общите атрибути на Rand SbeA1,...,Ak и изберете R×S, което удовлетворява R.A1=S.A1,...,R.Ak=S.Aktuples
③Премахнете тези колони на S.A1,...,S.Ak.
Ifthereisnocommonattributeinthetworelations,thenthenaturalconnectionistransformedintoaCartesianproductoperation.
4.Разделение
GivenrelationsR(X,Y)andS(Y,Z),X,Y,Zareattributegroups.YinRandYinScanhavedifferentattributenames,buttheymustcomefromthesamedomainset.ThedivisionoperationofRandSresultsinanewrelationshipP(X),wherePistheprojectionofthetupleinRthatmeetsthefollowingconditionsontheattributeX:theimagesetYXofthecomponentvaluexofthetupleonXcontainsSonYAcollectionofprojections.
Изрази на релационна алгебра и примери за техните приложения
Inrelationalalgebraoperations,theformulathatiscompoundedbyfivebasicoperationsthroughafinitenumberoftimesiscalledRelationalalgebraicexpressions.Theresultofthisexpressionisstillarelationship.Canuserelationalalgebraicexpressionstoexpressvariousdataqueryoperations.
Samplequestion:Supposetherearethreerelationshipsintheteachinglibrary:
Студентски взаимоотношения (S#, SNAME, AGE, SEX)
LearningrelationshipSC(S#,C#,GRADE)
CurriculumRelationshipC(C#,CNAME,TEACHER)
Thefollowingusesrelationalalgebraexpressionstoexpresseachquerystatement
1.SearchandlearnThestudentIDandgradeofthestudentwhosecoursenumberisC2.
2.RetrievethestudentIDandnameofthestudentwhosestudycoursenumberisC2.
3. Извлечете ID на ученика и името на избираемия курс, наречен MATHS.
4.RetrievethestudentIDofthestudentwhoseelectivecoursenumberisC2orC4.
5. Извлечете ID на ученика най-малко от номера на избираемия курс C2 или C4.
6. Потърсете имената на студенти, които не учат C2на възраст.
7.Извличане на имената на студентите, които изучават всички курсове.
1.∏S#,GRADE(δC#='C2'(SC))
или∏1,3(δ2='C2'
Режим на връзка
Режим на връзка е описанието на връзката.
R(U,D,dom,F)
Risthenameoftherelationship,andUconstitutestherelationshipAttributenamecollection,thedomainfromwhichtheattributesintheDattributegroupUcomefrom,themappingcollectionfromthedomattributetothedomain,andthedatadependencycollectionbetweentheattributesF.Forexample:thetutorandthegraduatestudentcomefromthesamedomain-people,takedifferentattributesName,anddefinethemappingofattributestodomainsinthepattern,thatis,whichdomainstheycomefrom:
dom(SUPERVISOR-PERSON)=dom(POSTGRADUATE-PERSON)=PERSON
Режимът на връзка обикновено се съкращава като:
R(U)илиR(A1,A2,...,An)
Име на релация,A1,A2,...,Име на атрибут, забележка: Съпоставянето на имената на домейни и на домейните на атрибутите е директно описано като типа и дължината на атрибутите.
Relationaldatabasesystemsaredatabasesystemsthatsupportrelationalmodels.
Характеристиките са: единична концепция, стандартизирана, изразена в двуизмерни таблици.
Въведение
Релационният модел е предложен от EFCoddin1970.
ItComparedwiththehierarchicalandmeshmodel,ithasthefollowingcharacteristics:
1.Опростена структура на данни (двуизмерна таблица)
2. Солидна теоретична основа.
a. Теория на релационните операции
b. Теория на дизайна на релационния модел
Thebasicassumptionoftherelationalmodelisthatalldataareexpressedasmathematicalrelations,thatistosaynasubsetoftheCartesianproductofaset.Thereasoningaboutthisdataiscarriedoutthroughbinary(thatis,noNULL)predicatelogic,whichmeansthatthereareonlytwopossibleevaluationsforeachproposition:Eithertrueorfalse.Dataismanipulatedbyamethodofrelationalcalculusandrelationalalgebra.Relationalmodelisadatamodelthatusesatwo-dimensionaltablestructuretoexpressentitytypesandconnectionsbetweenentities.
RelationalmodelAllowsthedesignertobuildamodelofinformationconsistencythroughthestandardizationofthedatabase.TheaccessplanandotherimplementationandoperationdetailsareprocessedbytheDBMSengineandshouldnotbereflectedinthelogicalmodel.ThisisthecommonpracticeofSQLDBMSOpposite,whereperformanceadjustmentsoftenrequirechangestothelogicalmodel.
Thebasicbuildingblocksofrelationshipsaredomainsordatatypes.Tuplesareorderedmultisetsofattributes,andattributesaredomainsandAnorderedpairofvalues.Arelationalvariable(relvar)isacollectionoforderedpairs(orderedpairs)offieldsandnames,whichactastheheaderoftherelation.Arelationshipisacollectionoftuples.Althoughtheserelationalconceptsaremathematicallydefined,theycanbelooselymappedtotraditionaldatabaseconcepts.Tablesarerecognizedvisualrepresentationsofrelationships;tuplesaresimilartotheconceptofrows.
Thebasicprincipleoftherelationalmodelistheprincipleofinformation:allinformationisexpressedasdatavaluesintherelation.Therefore,relationalvariablesarenotrelatedtoeachotheratdesigntime;instead,thedesignerusesthesamedomaininmultiplerelationalvariables.Ifoneattributedependsonanotherattribute,referentialintegrityisusedtoenforcethisdependency.
Предимства
(1)Структура на единични данни
Intherelationalmodel,whetheritisentitiesortheconnectionsbetweenentities,theyareallexpressedbyrelations,andrelationsAllcorrespondtoatwo-dimensionaldatatable,thedatastructureissimpleandclear.
(2)Therelationshipisstandardizedandestablishedonastricttheoreticalbasis
Thebasicnormsthatconstitutetherelationshiprequirethateachattributeintherelationshipcannotbeseparated,andtherelationshipisestablishedonasolidbasis.Thetheoreticalbasisisbasedonstrictmathematicalconcepts.
(3) Проста концепция и лесна работа
Thebiggestadvantageoftherelationalmodelissimplicity,whichiseasyforuserstounderstandandmaster.Arelationshipisatwo-dimensionaltable,andusersonlyneedtousesimplequeries.Thelanguagecanoperatethedatabase.
Състав
Структура на релационни данни
Връзка структура на единични данни
Real-worldentitiesandvariousconnectionsbetweenentitiesAllarerepresentedbyrelations.Fromtheuser'spointofview,thelogicalstructureofthedataintherelationalmodelisatwo-dimensionaltable.
Колекция от релационни операции
Често използваните релационни операции включват операции за заявка и операции за вмъкване, изтриване и модифициране. Сред тях способността за изразяване на операцията за заявка е най-важна, включително: селекция, проекция, връзка, деление, обединение, пресичане, разлика и т.н.
Intheearlystage,therelationaloperationabilityinrelationalmodelsisusuallyexpressedbyalgebraicmethodsorlogicalmethods,whicharecalledrelationalalgebraandrelationalcalculus,respectively.Relationalalgebraisawayofexpressingqueryrequirementsbyalgebraicoperationsonrelations;relationalcalculusisawayofexpressingqueryrequirementsbypredicates.ThereisalsoalanguagebetweenrelationalalgebraandrelationalcalculuscalledStructuredQueryLanguage,orSQLforshort.
Целостта на данните на връзката
Включва: цялост на домейн, цялост на обект, референтна цялост и дефинирана от потребителя цялост.
Интегритет на домейна: отнася се до диапазона от стойности на атрибута, такъв пол трябва да бъде мъжки или женски.
Правилото за цялост на обекта: Ако атрибутът е основният атрибут на основното отношение R, тогава атрибутът A не може да приеме нулева стойност. Например: В таблицата на курса (номер на курс, име на курс, учител, седмични часове, забележки), атрибутът "номер на курс" е основният ключ, тогава нито един "номер на курс" не може да приеме, същата стойност .
Referentialintegrityrules:Iftheattribute(orattributegroup)FistheforeignkeyofthebasicrelationshipR,itcorrespondstotheprimarykeyKsofthebasicrelationshipS(therelationshipRandSarenotnecessarilydifferentrelationships),ThenthevalueofeachtupleintherelationshipRontheattributeFmustbe:
1.Ortakeanullvalue(eachattributevalueinFisempty);
2.Или равно на стойността на основния ключ на множество в S.
Например:служител(номер на служител,име,пол,номер на отдел,шеф,заплата,комисионна)
отдел (номер на отдел, име, местоположение)
Theemployeenumberistheprimarykeyofthe"employee"relationship,thedepartmentnumberistheforeignkey,andthedepartmentnumberinthe"department"relationshipistheprimarykey,thenthedepartmentnumberattributeofeachtupleintheemployeerelationshipcanonlytakethefollowingtwotypesofvalues:
Тип1: Нулева стойност, което означава, че на служителя не е назначен отдел;
Type2:Non-emptyvalue,butthevaluemustbethedepartmentnumberofatupleinthedepartmentrelationshipValuemeansthattheemployeecannotbeassignedtoanon-existentdepartment,thatis,theremustbeatupleinthereferencedrelationship"department",anditsprimarykeyvalueisequaltotheforeignkeyvalueofthereferencerelationship"employee".
Domainintegrity,entityintegrityandreferentialintegrityaretheintegrityconstraintsthatmustbemetintherelationalmodel.Aslongasitisarelationaldatabasesystem,itshouldsupportdomainintegrity,entityintegrityandreferentialintegrity.Inaddition,differentrelationaldatabasesystemsoftenrequiresomespecialconstraintsaccordingtotheirapplicationenvironments,anduser-definedintegrityisaconstraintoncertainspecificrelationaldatabases.Forexample:courseselectiontable(coursenumber,studentnumber,grade).Whendefiningtherelationshipselectiontable,wecandefinetheconstraintthattheattributeofgrademustbegreaterthanorequalto0.