Anbefalet, 2024

Redaktørens Valg

Forskel mellem relationel algebra og relationel beregning

Relational Algebra og Relational Calculus er de formelle forespørgselssprog for en relationel model. Begge udgør basen for SQL-sproget, som bruges i de fleste af de relationelle DBMS'er. Relationelle algebra er et proceduremæssigt sprog. På de andre hænder er Relational Calculus et declarative sprog. Relational Algebra og Relational Calculus kan differentieres yderligere på mange aspekter, som jeg har diskuteret nedenfor med hjælp af sammenligning diagram.

Indhold: Relational Algebra Vs Relational Calculus

  1. Sammenligningstabel
  2. Definition
  3. Nøgleforskelle
  4. Konklusion

Sammenligningstabel

Grundlag for sammenligningRelationelle algebraRelational Calculus
GrundlæggendeRelationelle algebra er et proceduresprog.Relationelle Claculus er erklærende sprog.
staterRelational Algebra angiver, hvordan man opnår resultatet.Relational Calculus angiver hvilket resultat vi skal opnå.
BestilleRelationsalgebra beskriver den rækkefølge, i hvilken operationer skal udføres.Relational Calculus angiver ikke rækkefølgen af ​​operationer.
DomæneRelationsalgebra er ikke domæneafhængig.Forhold Claculus kan være domæneafhængigt.
RelateredeDet er tæt på et programmeringssprog.Det er tæt på det naturlige sprog.

Definition af relational algebra

Relationsalgebra præsenterer det grundlæggende sæt operationer for relationel model. Det er et proceduremæssigt sprog, der beskriver proceduren for at opnå resultatet. Relationsalgebra er præskriptiv, fordi den beskriver rækkefølgen af ​​operationer i forespørgslen, der angiver, hvordan man henter resultatet af en forespørgsel.

Operationssekvensen i en relation algebra hedder relationelle algebra udtryk. Relational Algebra Expression tager enten et forhold eller to relationer som input til udtrykket og frembringer en ny relation som følge heraf. Det resulterende forhold opnået ud fra relationelle algebra udtryk kan yderligere sammensættes til det andet relationelle algebra udtryk, hvis resultat igen vil være en ny relation.

Relation Algebra danner rammerne for implementering og optimering af forespørgsler under forespørgselsbehandling. Relationsalgebra er en integreret del af relationel DBMS. Den grundlæggende operation, der indgår i relationel algebra, er { Select (σ), Project (π), Union (∪), Set Difference (-), Cartesian produkt (×) og Rename (ρ) }.

Definition af Relational Calculus

I modsætning til relational algebra er Relational Calculus et højere niveau Declarative sprog. I forbindelse med relationelle algebra definerer relationel calculus, hvilket resultat der skal opnås. Relational Calculus, som relativ algebra, angiver ikke rækkefølgen af ​​operationer, hvor forespørgslen vil blive evalueret.

Sekvensen af ​​relationelle calculus operationer kaldes relationelle calculus udtryk, der også producerer en ny relation som følge heraf. Relational Calculus har to variationer nemlig Tuple Relational Calculus og Domain Relational Calculus .

The Tuple Relational Calculus lister tupler til valgt fra en relation baseret på en bestemt betingelse . Det er formelt betegnet som:

P (t)

Hvor t er sætet af tupler fra, hvor tilstanden P er sand.

Den næste variant er Domain Relational Calculus, som i modsætning til Tuple Relational Calculus viser de attributter, der skal vælges fra en relation, baseret på en bestemt tilstand . Den formelle definition af Domain Relational Calculus er som følger:

Hvor X1, X2, X3, . . . Xn er attributterne, og P er den bestemte betingelse.

Nøgleforskelle mellem relationel algebra og relationel beregning

  1. Den grundlæggende forskel mellem Relational Algebra og Relational Calculus er, at Relational Algebra er et Proceduralt sprog, mens Relational Calculus er et Nonprocedural, i stedet er det et Deklarativt sprog.
  2. Relationsalgebra definerer, hvordan man opnår resultatet, mens Relational Calculus definerer, hvilken information resultatet skal indeholde.
  3. Relationsalgebra specificerer den rækkefølge, i hvilken operationer skal udføres i forespørgslen. På de andre hænder angiver Relational calculus ikke sekvensen af ​​operationer, der skal udføres i forespørgslen.
  4. Relational Algebra er ikke domæneafhængig, mens Relational Calculus kan være domæneafhængig, da vi har Domain Relational Calculus.
  5. Relationsalgebra-spørgesproget er nært beslægtet med programmeringssprog, mens Relational Calculus er tæt forbundet med det naturlige sprog.

Konklusion:

Relational Algebra og Relational Calculus har begge tilsvarende ekspressionskraft. Den største forskel mellem dem er bare, at Relational Algebra angiver, hvordan man henter data og Relational Calculus definerer, hvilke data der skal hentes.

Top