AufderlogischenEbenesollteesmoglichsein,denAusschnittdermodelliertenWeltzu

Größe: px
Ab Seite anzeigen:

Download "AufderlogischenEbenesollteesmoglichsein,denAusschnittdermodelliertenWeltzu"

Transkript

1 InformatikIII Datenbanken Sommersemester1992 Prof.Dr.R.Laue GraphikenvonWalterDorwald,HelmutHahnundMartinDobmann ErstelltvonWalterDorwald,MartinDobmannundHelmutHahn

2 Inhalt: A.Literaturverzeichnis DiephysikalischeEbene EntwurfstheorierelationalerDatenbanken DieSpracheSQL Datenmodelle FormaleBeschreibungsmittel Einfuhrung...1

3 BeispielVersicherungsunternehmen entnommenwurde. 1.Einfuhrung Eswirddaraufhingewiesen,dadieVorlesungzugroenTeilenausderimAnhangstehendenLiteratur IneinemVersicherungsunternehmengebeesdieSparten beziehungsweisevorgenommen.dahermumandaten,diemehrerespartenbetreen,mehrfach jeweiligenbereich.diedatenfalleningroenmengenan.deshalberfolgtdiespeicherungund VerwaltungimComputer. FurdieeinzelnenSpartenwerdenspezielleAuswertprogrammeundDatensammlungenbenotigt AuerdemgibtesAbteilungenfurdieeinzelnenBereiche.DortarbeitenSpezialistenfurden Lebens-,Kfz-,Gebaude-,Kranken-,Hausrat-,Transport-undRechtsschutzversicherung. speichern. Vorteil Nachteil zwischendenverschiedenenabteilungennotig. JedeSparteistfurihreeigenenDatenverantwortlich,daherergebensichkeineKompetenzschwierigkeitenundessindkeinezeitaufwendigenAbstimmungenuberDatenfestlegung IsteineInformationmehrfachvorhanden,sobestehtbeieinerAnderungdasRisiko,dadie Informationnichtuberallgleichzeitiggeandertwird.Ursachendafurkonnensein Beispiel DieInformationenvomKundenkommenaneinebestimmteSparte,zumBeispielKonto- anderungoderadressanderung.beizahlungsunfahigkeitwirdeinesparteinformiert.fur WerbezweckemujedeSparteaufdieKundendatenderanderenSpartenzugreifen.Auchdie 2.Informationensindverschiedenmodelliert(Transformationschwierig) 1.SchlechteOrganisation 1.13-Ebenen-Modell Mankannsichdas3-Ebenen-Modellwiefolgtveranschaulichen RentabiltatundReaktionenaufdenMarktsindspartenubergreifend. Anwendersichten PhysikalischeEbene LogischeEbene Sicht1 ZZZZZZZZZ Datenbanksystem Sicht2 B BBBBSichtn Massenspeicher B 1

4 desunternehmens.diesistsomitnichtnureinedatenverarbeitungsspezischebeschreibung! DielogischeEbenestellteinGesamtmodellallerDatendesUnternehmensdar.Derzuverwaltende DieverschiedenenSichtenstellenAusschnitteausdieserGesamtheitdar.Sieentsprechenspeziellen AusschnittderrealenWeltisthierdeniert.DaserfordertdieKenntnisderBedeutungallerDaten Anwenderwunschen,etwadeneneinerAbteilung. DiephysikalischeEbenebeschreibtdieDatenverarbeitungssichtderDaten.Diesbeinhaltetdie AufteilunginDateien,Zugriswege,Zugrisrechteundanderes. Bemerkung 1.2Datenbanksystem Eswirdgefordert,dadieEbenenunabhangigseinmussen. AnderungderphysikalischenSpeicherungdarfAnwenderprogrammenichtberuhren. JederzeitmussenneueSichtenaufvorhandeneDatenhinzufugbarsein. transformationderergebnissedurchgefuhrtwerden.auerdemmussendieeingegebenendaten DieAufgabedesDatenbanksystemsistes,eineautomatischeTransformationderAnwenderwunschezuDatenverarbeitungsanfragendurchzufuhren.WeiterhinmudurchProgrammedieRuck- AufderlogischenEbenesollteesmoglichsein,denAusschnittdermodelliertenWeltzu aufihrekorrektheituberpruftwerden. vergroern,ohnevorhandenesichtenzuandern. 2

5 mengefat.objektebesitzeneigenschaftenodermerkmale,dieseheienattribute.alleentitieseines 2.FormaleBeschreibungsmittel 2.1DasEntity-Relationship-Model SeiennunA1;:::;AndieAttributeeinesEntity-setsE.DannwirdjedemAieinWertebereichD(Ai) Entity-setshabendiegleichenAttribute. Beispiel DieObjektederrealenWeltheienEntities.ObjektegleichenTypswerdenzuEntity-setszusam- zugeordnet.jedesentityeausewirdbeschriebendurch(e1;:::;en),wobeiei2d(ai).esistalso DieAttributwertedienendazu,Eigenschaftenzubeschreiben.DamitkonnenzudiesenObjekten eiderwertdesobjektsebeieigenschaftai.fallsai=alter,dannistbeispielsweiseei=45jahre. Informationenausgegebenwerden.Auerdemdienensiedazu,dieObjekte(Entities)zuidentizieren. AttributesindetwaAlter,Telefonnummer,Anschrift,Kinderzahl,Gehaltusw. HinzundKunzsindAngestellte.Hinz,KunzsindalsoEntitiesdesEntity-setsAngestellter. Esreicht,dieWertebeieinemSchlusselzukennen,umeinObjekteindeutigzuidentizieren.Ein Denition EswerdenhaugspezielleAttributezurIdentikationeingefuhrt. allgemeinenmehrereschlussel.dienicht-primarschlusselheiensekundarschlussel. speziellerschlusselwirdimallgemeinenalssogenannterprimarschlusselausgezeichnet.esgibtim ist. mitanderenworteneinminimalessmitsa=fa1;:::;angunddereigenschaft,dafur jedese=(e1;:::;en)2eunde0=(e01;:::;e0n)2emitei=e0ifuralleai2sfolgt,dae=e0 EineminimaleMengevonAttributen,derenEintrageeinObjektbereitsfestlegen,heitSchlussel, Beispiel Denition NebendenEntity-setsbestehenauchBeziehungenzwischendiesen. Schlusselnummer,oderuberPolizeilichesKennzeichen. HieristdieHinzunahmedesredundantenAttributs\PolizeilichesKennzeichen"ausDatenschutzgrundenerwunscht. KraftfahrzeugelassensichidentizierenuberHersteller,Fahrgestellnummer,uberBesitzerund Beispiel (Ang,Abt)mitAng2AngestellterundAbt2Abteilung EsseiE1=AngestellterundE2=Abteilung.DannistdieBeziehung\arbeitetin"dieMengeder EineBeziehungzwischenE1;:::;EnisteineTeilmengevonE1:::En,dasheitgewissen-Tupel (E1;:::;En)2E1:::En. 2.2DasEntity-Relationship-Diagramm EineDarstellungderrealenWeltdurcheineMengevonEntity-setsundBeziehungenwirddurcheinen Somitgehorenalso(Hinz,Versand)und(Kunz,Reklamation)zu\arbeitetin". AngarbeitetinAbt. Graphenveranschaulicht.Esgibt3ArtenvonKnoten 3

6 EinEntity-Relationship-Diagrammsiehttypischerweisewiefolgtaus: Entity-setswerdenRechteckenzugeordnet, AttributewerdenKreisenzugeordnet, BeziehungenwerdenRautenzugeordnet. &%Angestellter '$ Name &% '$ RufNr &% '$ Gehalt &% '$ arbeitetin Leiter Abteilung DieKantenverlaufenzwischenRechteckenundKreisenzugehorigerAttributeundzwischenRechteckenundRautenzugehorigerEntity-sets.DieBeziehungensindhaug2-stellig,wobeiesfolgende TypenvonBeziehungengibt &% '$ (1,n)-Beziehung Aufgabe fureine(1,n)-beziehung. ZujedemEntityausE2gehorthochstenseinEntityausE1.Somitfolgtaus(E1;E2)2Bund SeiE1=AbteilungsleiterundE2=Abteilung,dannistdieRelationB\gehortzu"einBeispiel (E01;E2)2B,daE1=E01ist. 1 ne2 (n,m)-beziehung Beziehung. SeiE1=StudentundE2=Vorlesung,dannistdieRelationB\hort"einBeispielfureine(n,m)- EsdurfenmehrereEntitiesausE1zumehrerenEntitiesausE2inderjeweiligenBeziehungstehen. n B me2 4

7 isa-beziehung SeiE1=TechnikerundE2=Angestellter,dannistdieRelationB\istein"einBeispielfureine JedesEntityausE1istSpezialisierungeinesEntitiesausE2 Fureineisa-Beziehunggilt (isa)-beziehung. B -E2 MitdiesenBeispielenkonnenwireinkomplexesEntity-Relationship-Diagrammkonstruieren,wobei dieschlusselattributeunterstrichensind. 1.JedesE12E1hatdieAttributederE22E2. 2.IstE12E1,soistihmeinE22E2zugeordnet,dasdiegleichenAttributwertehat. &% '$ AngNr kanniegen Pilot isa 6 &% '$ Name Angestellter&% '$ Beruf mn Maschine &% '$ AngNr Abug um 1 iegt Flugn1 kannwarten Techniker isa 6&% '$ Gehalt mn hatgebucht Passagier n1 5

8 3.Datenmodelle EsgibtimwesentlichendreiverschiedeneModelle,undzwardasNetzwerk,dasHierarchischeModell unddasrelationalemodell. IneinemNetzwerkgibtesEntity-Setsund(1,n)-Beziehungen. 3.1Netzwerk gestellt. Beispiel FurjedesEntity-SetwirdeinRechteckgezeichnet.Eine(1,n)-BeziehungwirddurcheinenPfeildar- EinegraphischeVeranschaulichungfureinNetzwerkerfolgtdurchdasBachmann-Diagramm. Denition EswerdendieVorlesungenAnalysisI,AlgebraIundsoweiterangeboten.DieVorlesung IstBE1E2eine(1,n)-Beziehung,soheitE1Owner-TypundE2Member-Typ. Kunz,:::Egon.DannsiehtdasBachmann-Diagrammwiefolgtaus: AnalysisIhorenHinz,Kunz,:::Meier,unddieVorlesungAlgebraIhorendieStudentenMeier, AlgebraI j.? rr? R..? Meier Kunzr Kunz Egon ImplementierungvonBeziehungendurchZeigerketten(LineareListe) r FurjedeBeziehungbenotigtmaneineeigeneZeigerkette.DiePositioneinesZeigersbestimmtdie Beispiel undeiner(1,m)-beziehung. Beziehung,diedurchdieentsprechendeZeigerkettedargestelltwird. Problemegibtesbeiden(n,m)-Beziehungen.Diesewerdenaufgelostzueiner(1,n)-Beziehungen handeltessichumeinesogenannte(n,m)-beziehung.nachauosen,dieserfurdasnetzwerkmodellnichtzuverarbeitendenbeziehung,erhaltenwirdieentity-sets IndiesemBeispielwollenwirwissenwelcheStudentenwelcheVorlesungenbesuchen.Da Owner-Typ Member-Typ/Member-Typ -Vorlesung/Horer 6 Owner-Typ einstudentmehrerevorlesunghorenkann,undinjedervorlesungmehrerestudentensind, Horer

9 horenalgebraierhaltenwirfolgendeentitiesundbeziehungen: FurdaskonkreteBeispielMeier,HinzundKunzhorenAnalysisIundMeier,HinzundEgon AnalysisI r Meier Kunz Hinz AlgebraIr? rr rr6 6? Egon 6 6? Umzustarten,wirdeinEinstiegspunktbenotigt.DazuwirdzujederZeigerkettediezuletztverwendeteAdresseineinerTabellegehalten.Wenn(n,m)-Beziehungensorealisiertwerdensollten, r Navigieren demselbenentitystehen.somitistesschwierigzuentscheiden,welcherzeigerzuwelcherbeziehunggehort. UmdieHorerderVorlesungAnalysisIauszugeben,istdieZeigerkettestartendbeiAnalysisI zudurchlaufen.beijedemmemberistdieanderezeigerkette,diezumhorergehort,solangezu hatteeinmembermehrereowner,unddazumutenmehrerezeigerfurdieselbebeziehungbei MehrstelligeBeziehungen EsseidiemehrstelligeBeziehungBE1E2:::En gegeben.dieimnetzwerkmodellnichtdarstellbare(1,n)-beziehung Zeigerkettefortgesetzt.Brecheab,wenndieKettezuAnalysisIzuruckfuhrt. durchlaufen,bisderownergefundenwird.dieserwirdausgegebenundderdurchlaufder1. wirddurcheinfuhrungeineskunstlichenentity-typesmitnattributenwiefolgtaufgelost. E1 E2B DieEntitiesdieseskunstlichenAttributesbestehenausdenZeigerkombinationenderEntitiesder Ei's,dieinRelationzueinanderstehen.Manerhaltalsofur(a;b;c)2B 7

10 a kunstlichesentity Bewertung DerZugriuberZeigerkettenistschnell,aberdieZugrisroutinensindvolligabhangigvonder 6? b6? c6? AufderlogischenEbenewerdenBaumegebildet,derenKnotenEntity-Setsdarstellen.Esgibtnur 3.2HierarchischesDatenmodell(IMSvonIBM) BeidiesemModellwerdendieDateninBaumenabgespeichert.Manerhalteinen\Wald". Speichermethode.DasNetzwerkmodellentsprichtalsonichtdem3-Ebenen-Modell.Denneine (1,n)-Beziehungen,dieMember-TypensindSohnederOwner-Typen.TritteinEntity-Setinmehreren AnfrageerfolgtaufderphysikalischenEbene. Beziehungenauf,sowerdenvirtuelleKopiendeniert.AlsMember-SettritteinEntity-Setnureinmal DarstellungeinesNetzwerkesdurcheinehierarchischeDatenbank Datenstruktur DafuristdieMengederNachfolgergeordnet. AufderphysikalischenEbenewerdenbeijedemEntityvariabelvieleZeigerzuNachfolgernerlaubt. aufsonstwerdendievirtuellenkopienverwendet.diesekopiensindnieowner-typeinerbeziehung. DieDatenstrukturwirddurcheineninInformatikIIvorgestelltenBaumrealisiert. 1.WahleeinEntity-SetalsWurzeldesBaumes,wennmoglicheinsolches,dasniealsMember- 4.IstjedocheinMember-TypbereitsimWaldaufgetreten,soerndeandieserStelleeinen 2.OrdnealledieEntity-SetsalsSohnean,diealsMember-TypeinerBeziehungzudiesem 3.Versuche,jedenderSohnealsOwner-TypunddamitalsVatereinerweiterenBeziehung darzustellenundmachederenmember-typzusohnen. gewahltenentity-setauftreten. TypeinerBeziehungerscheint. Bewertung 5.KannmandenBaumnichtvergroern,sosucheweitereEntity-Sets,dienochnichtverwendet virtuellenmember-typ,dessenentitiesauszeigernaufdiebereitsbestehendenentitiesdes betrachtenentity-setsbestehen.diesevirtuellenentity-setswerdennievater. ausreichendunterstutzt. DerZugribezuglichderjeweiligenHierarchieistschnell,derZugrianhandvonEigenschaften, dieindenblatternbeschriebensind,istjedochlangsam.auerdembestehteinehoheabhangigkeitderanwenderprogrammevonderspeicherung,dasheitdas3-ebenen-modellwirdnicht wurden.dannfahrefortmit1.sindalleentity-setsverbraucht,sohoreauf. 8

11 3.3RelationalesModell(Codd1971) DasrelationaleModellvermeidetdieVerwendungvonZeigern.DieBeziehungenwerdenwiedieEntites behandelt.diebeidenrelationalendatenbankenverwendetedatenstrukturistdietabelle. A1A2:::An a1a2.. Beispiel EinTupelt=(a1;a2;:::;an)hatinderi-tenSpalteeinenEintragaiausdemAizugeordneten DieSpaltenderTabellentragenAttributnamen(A1,A2,:::,An),undjedeZeileisteinWertetupel. Wertebereich. DieDatenbankeinesUnternehmensenthaltdieTabellenLieferant,TeilundLieferungmit. folgendendatenlieferant UmdieineinerMengevonTabellenabgespeichertenInformationenabzurufen,kannmandieTabellen LNRLNameLOrt L1MeierKoln L2MeierBerlin L3SchmitzKolnTNRTNameGewicht T1Schraube20 T2Mutter T3Schraube15 Teil10 LFNRTNRMenge LF1T11000 LF2T2500 LF3T12000 Lieferung 1.Schnitt,VereinigungundDierenz Tabellensind. WirkonnenfolgendeOperationenaufMengenvonTabellenanwenden,wobeidieErgebnissewieder verknupfenundgezieltinformationenheraussuchen.dazudientalshilfsmitteleinerelationalealgebra. 2.Projektion Tauf(B1;:::;Bk)projizieren,dasheit bereich,sokannmanmitt1undt2dieoperationen\\",\["und\n"ausfuhren. SeiTeineTabellemitdenAttributenA1;:::;AnundB1;:::;Bk2fA1;:::;Ang.Dannkannman SindT1undT2TabellenundhabenfuralleidieAttributeAi(T1)undAi(T2)denselbenWerte- 4.Selektion 1.StreichejedeSpalteAjmitAj=2fB1;:::;Bkg. \<",\=",\>"und\"deniert.dannkannmaneineformelfbilden,indemmaninjeder SeiTeineTabellemitAttributenA1;:::;An.SeiDiderWertebereichvonAiundaufDisei\", DieProjektionderTabelleTaufdieAttributeAi1;:::;Aikwirdmiti1;:::;ik(T)bezeichnet. 2.SortieredieSpalteninderReihenfolgeB1;:::;Bk. Komponenteivorschreibt,welchePradikatedieEintragedergesuchtenTupel formuliertin 3.StreicheDuplikateunterdenTupeln. denvergleichenundkonstantenausdi erfullensollen.dasergebnisistdiemengedertupel, DieSelektionderTabelleTbezuglichderFormelFwirdmitF(T)bezeichnet. dieallenpradikatengenugt,alsoinobigembeispielbeispielsweisealletupelauslieferant,fur diederortdeneintragkolnbesitzt. 9

12 5.NaturlicherVerbund(\naturaljoin") erzeugt. Attributenverlangert.Wennzut1keinpassendest2existiert,wirdaust1keinTupelvonT1./T2 Eintragenvont1ubereinstimmen,undt1aufC1;:::;CldurchdieEintragevont2beidiesen zujedemtupelt12t1jedestupelt22t2aufsucht,desseneintrageaufb1;:::;bmmitden AttributenA1;:::;An;B1;:::;Bm;C1;:::;Cl.DieTupelvonT1./T2erhaltman,indemman C1;:::;Cl;B1;:::;Bm.WeiterseiAi6=Cjfuralleiundj.T1./T2isteineTabellemitden SeienT1undT2Tabellen.T1habedieAttributeA1;:::;An;B1;:::;BmundT2habedieAttribute InobigemBeispielergibtsichfurLieferung./Teil TNRTNameGewichtLFNRMenge T1Schraube20LF11000 T1Schraube20LF32000 T2Mutter 6.-Verbund assoziativ. samenattributebesitzen. Esgiltunteranderem(T1./T2)./T3=T1./(T2./T3),dasheitder\naturaljoin"ist Teil./LieferantlieferthingegendaskartesischeProdukt,dadiebeidenTabellenkeinegemein- 10LF2500 verbundenwerden,beidenendereintragai(t1)vont1beiciinder-relationzudemeintrag ai(t2)beidisteht.esistauchmoglichstattai(t2)einekonstanteazuwahlen. T1./T2entstehtausdenTupelvonT1,indemausT2dieTupelt2mitdenTupelnt12T1 DieTabelleT1habedieAttributeA1;:::;AnundT2habedieAttributeB1;:::;Bm.Esseien Beispiel C1;:::;Cl2fA1;:::;AngundD1;:::;Dl2fB1;:::;Bmg.Weitergelte Mittelseines-JoinskonnenwirausderTabelle Wertebereich(Ci)=Wertebereich(Di)undi2f;<;=;>;gfurallei: ZugnummerAnkunftAbfahrt :0010:15 Bewertung dertabellemitsichselbst,sodadie\"-beziehungerfulltist. DerEintragbeiAnkunftmukleineralsderbeiAbfahrtsein.ManbildealsodenVerbund eineumsteigetabellekonstruieren :3011:00 DasrelationaleModellerlaubteseineAnfragezuformulieren,ohnedamanbereitsangibt,wie 12:0012:15 langsameralsdiebeidenanderenkonkurrierendenmodelle. werdenvonderrealenimplementationunddiedatenunabhangigkeitnachdem3-ebenen-modell AllerdingssinddierelationalenDatenbankenvorallembeiVerwendungvonVerbundoperationen istgewahrleistet. dieantwortzurealisierenist(\deklarativ").damitkanndielogischedatenbankstrukturgetrennt 10

13 wirddiespracheobjektorientiertweiterentwickelt. 4.1EinigeBefehleCREATETABLETafelname rungendurchmehrereherstellerwirddiesprachedurcheineansi-normbeschrieben.neuerdings DierelationaleDatenbankspracheSQLwirdweiterentwickeltzuSQL2undSQL3.FurImplementie- 4.DieSpracheSQL ErlaubteTypen [,Attributname2Typ2[NOTNULL] (Attributname1Typ1[NOTNULL] InSQLgibtesdiefolgendenTypen integer2[ 215+1;215 1],AttributnamenTypm[NOTNULL]]);... smallinteger2[ 231+1;231 1] char(n):zeichenkettefesterlange(n254) decimal(m;n):m-stelligezahl(m15)mitnnachkommastellen(0nm) oat2[5:410 79;7:21075] sinderlaubt,auerwennsieexplizitdurch\notnull"verbotenwordensind. NurdiefestenBasistypenhabenVergleichsfunktionen\<",\",\<>",\>",\",\=".Nullwerte dreigraphik-datentypen longchar:zeichenkettevariablerlange(bis215 1Symbole) varchar(n):zeichenkettevariablerlange(n254) ALTERTABLE[Erzeuger]Tafelname CREATE[UNIQUE]INDEXIndexnameON[Erzeuger.]Tafelname ADDAttributnameTyp; [,Attributname2[ASC DESC] (Attributname1[ASC DESC]. DROPTABLETafelname; EswirdeinB-BaumerzeugtzumWertebereichW1:::Wn,wobeiWiderWertebereichvon AttributnameimitlexikographischerAnordnungist.,Attributnamen[ASC DESC]]);. 11

14 DerB-BaumisteineVariationdesB-Baumes,beidemdieDatennurinBlatterngehaltenwerden. DamitergibtsichmehrPlatzfurZeigerindeninnerenKnoten.WerdennurdieAdressenbereits WeitereSQL-Befehlesind vorhandenerdatenabgespeichert,sokanneinsolcherzugriswegjederzeithinzugefugtodergeloscht DasSchlusselwortUNIQUE spezizieren. (zumbeispieltelnr,name,gebdatum,gehalt).damitkannmansogenannteprimarschlussel BeidenangegebenenAttributnamenkannzueinemWertetupelnureinDatensatzexistieren. INSERTINTO[Erzeuger.]{Tafelname Sichtname}[(Attributname)] VALUES(Daten); UPDATE[Erzeuger.]TafelnameSET DELETEFROM[Erzeuger.]Tafelname Attributname1=Ausdruck1, Attributname2=Ausdruck2, [WHEREBedingung]; BeispielCREATETABLEProfessor [WHEREBedingung]; Attributnamen=Ausdruckn.. (Pnrchar(7)NOTNULL, DasDataDictionarystellteineArtDatenbankuberdieDatenbankdar.EsgibtdieStrukturen CREATEUNIQUEINDEXProfindexONProfessor(Pnr); INSERTINTOProfessorVALUES(``N44'',``Gauss'',``Bayreuth''); Ortvarchar(15)NOTNULL); Pnamevarchar(20)NOTNULL, SYSCATALOG:FurjedeTabelleeinTupel. SYSCOLOUMS:FurjedesAttributjederTabelleeinTupel. TNAMECREATORNAME NamederBenutzer-BasisoderAttribut-:::Tupelzahl TabelleKennzeichenSicht TNAME CREATORTABLETYPNCOLSREMARKSROWCOUNT Attribut-Attribut-Wertebereichs-Lange::: name nummer COLNO zahl 12 COLTYPE typ LENGTHREMARKS

15 DasSELECT-Kommando WeitereTabellenbeinhaltendieZugriswege,dieZugrisrechteunddieViews. EintypischesBeispielfurdieSELECT-Anweisungist ::: Ausdruck,derdas Viewdefiniert VIEWTEXT ::: DieallgemeineSemantikfureinSELECT-Kommandolautet SELECTProfessor_Ort,Student_Name FROMProfessor,Student selectlist ORDERBYProfessor.PnameASC; WHEREProfessor_Ort=Student_Ort select 6? ANDStudent_Fach='Mathematik' distinct 6? <Erzeuger.> from6,? <Tafelname>? aliasname wherebedingung groupby havingbedingung? 6 <Attributname> Nummer6? 6? asc orderby, <Attributname> desc 6 ;- wobeibedingungfur6 not Vergleichs-Bed. 6? and or- 13

16 steht.derausdruckvergleichs-bed.wiederumstehtfur =<>< is > not? Ausdruck null any6 all? (Spaltenselektion )- DabeiistAusdruckvonderGestalt undtermstehtfur termterm6 + = + 6? Ausdruck <Spaltenname> <constant> DieSpracheSQLarbeitetmengenorientiert.DieTupelwerdenanhandderEintrageangesprochen. InChingegenwerdenVariablenoderStrukturenuberihreAdressenangesprochen.WerdenWerte ( Aggregat )- Variablenerfolgen,dieuberAdressenansprechbarsind. ausc-variableninsqlubernommen,sogeschiehtdiesmittelseinfugeoperationen.sollumgekehrt auseinertabelleeintupelincbenutztwerden,somufurdiesestupeleinzelndiezuweisungan Ubersetzung ausdemquellprogrammdiesql-anweisungenherausundersetztsiedurchdenaufrufvonc- DasQuellprogrammenthaltnebenC-AnweisungenauchSQL-Anweisungen.DerPrecompilersucht Bibliotheksfunktionen. prog.pcprecompiler!prog.ccompiler SQL-Programmbibliothek!9>=>;Linker!prog.o! 14!prog

17 IneinerDeclare-SectionwerdenVariablensowohldemC-TeilalsauchdemSQL-Teilbekanntgemacht. EineinfachesEinfugengeschiehtzumBeispielfolgendermaen execsqlbegindeclaresection; execsqlexecuteimmediate execsqlenddeclaresection; char::: int::: oderumeintupelausc-variableneinzufugen execsqlexecuteimmediate insertintoauftrage insertintoauftrage values(:auftragsnummer,:datum,:name); values(1027,'jan.7','schmidt'); mu.execsqlbegindeclaresection Einprepare-Statementbewirkt,daeinStatementnichtbeijedemAuftreteninterpretiertwerden execsqlprepareauftr_eingfrom/*vorbereitendereinfuge-operation*/ execsqlprepareeinfugenfrom execsqlconnect;/*vorauszufuhrendemsql-aufruf*/ execsqlenddeclaresection; insertintoauftrage values(:auftragsnummer,:datum,:name); intauftragsnummer,menge; insertintoenthalt chardatum[10],name[20],teil[10]; Lies(Teil); Schreib("EingabevonTeil-Mengen-Paaren(Abschlumit'Ende':"); Schreib("EingabevonAuftragsnummer,DatumundKunde:"); Lies(&Auftragsnummer); Lies(Datum); Lies(Name); execsqlexecuteauftr_eingusing:auftragsnummer,:datum,:name; values(:auftragsnummer,:teil,:menge); while(strcmp(teil,"ende")) UmeineausSQLzuruckgegebeneTabelleinCzuverarbeiten,wirdeineTupel-Variableeingefuhrt, {Lies(&Menge); } execsqlexecuteeinfugenusing:auftragsnummer,:teil,:menge; Lies(Teil); 15

18 diedietabellewieeincursordurchlauft. execsqlopenc; execsqlwhenevernotfoundgotoende; for(;;) {execsqlfetchcinto:a1,:a2,:::,:an; execsqldeclareccursorfors; execsqlpreparesfromhselectstatementi; 4.2AlgebraischeOptimierungvonAnfragen }Ende: execsqlclosec; :::/*HierkannnundasWertetupel(A1,A2,:::,An)verarbeitetwerden*/ aufdiezugegrienwird.dieinnerenknotenstelleneinzelneoperationendar,mitdenendieausden WirhabenzweiMoglichkeiten,dieAusfuhrungvonDatenbank-Anfragenzubeschleunigen NachfolgernbestehendenDatenmengezuverarbeitensind.DieWurzelistdieErgebnis-Relation. DieAusdruckewerdendurchBaumedargestellt.DieBlatterstellendieRelationen(Tabellen)dar, ZunachstwollenwirunsmitderNutzungderMoglichkeita)befassen. b)hinzunahmevonindexen,dieimhauptspeicherabgelegtwerden. a)nurbenutzungderrelationalenalgebra,und Beispiel WirhabendieRelationenPersmitAttributenANR,Name,Gehalt,Tel,KindundBerufsowie AbtmitAttributenANR,Ort,ManagerundAufgabe.EssollfolgendeAnfragebeantwortetwerden \FindeNameundGehaltallerAngestellten,dieinBindlacharbeiten". EinAnfrage-Baumsiehtfolgendermaenaus SELECTName,Gehalt ANDOrt='Bindlach' FROMPers,Abt WHEREPers.ANR=Abt.ANR Projektion A Selektion Verbund ProjektionName,Gehalt SelektionOrt='Bindlach' VerbundPers.ANR=Abt.ANR 16Abt

19 erfordert. verursachtebeimverbundeinenaufwandvono(jpersjjabtj). DazuistderBaumineinenanderenzutransformieren,derwenigerAufwandbeiderAbarbeitung DurcheineVeranderungderReihenfolgederOperationenkannderAufwandverringertwerden. DirekteAbarbeitungdiesesBaumes,wieersichzumBeispielauseinemCompilerergebenwurde, A ProjektionName,Gehalt VerbundPers.ANR=Abt.ANR aufgenommenwerden.dieursprunglicheprojektionistwiederumauszufuhren,umdasverbundattributzueliminieren. A UmdieProjektionmitVerbundzuvertauschen,muindieProjektiondasVerbundattributmit SelektionOrt='Bindlach' Abt ProjektionName,Gehalt VerbundPers.ANR=Abt.ANR Beispiel SelektionOrt='Bindlach' Abt InderTabellePersausdemvorausgegangenenBeispielseizusatzlichnochdasAttribut 17

20 Fremdsprachevorhanden.WirsuchenalleenglischoderfranzosischsprechendenMitarbeiter. Union A Hiererhaltenwirkurzer Fremdsprache='englisch'Selektion APers SelektionFremdsprache='franzosisch' Pers AssoziativeOperatorenSelektionFremdsprache='englisch' DasErgebnisderOperationR1./R2./R3./R4istvonderKlammerungunabhangig.Bezuglich PersFremdsprache='franzosisch' oder Beispiel desaufwandsergebensichjedochunterschiede. A R3R4 R1 R2 18

21 FurdieBerechnungvon(R1./R2)./(R3./R4)erhaltmanhingegen./ AHHHHHHHH R1 R2 R3 HeuristikfurdieAbschatzungderGroederZwischenergebnisse jgleichwahrscheinlichenwertengebildetwird,dasheit DieGroederZwischenergebnisse(inobigenBildernfettgezeichnet)entscheidetdaruber, welcherbaumgunstigerist. Eswirdangenommen,dabeiallenvierRelationenderVerbunduberdasselbeAttributmit R4 ZumBeispielhatR1./R2ca.jR1jjR2j diewahlderbesserenalternativeausderungleichung jjr1jjr2jjr3jjr4j: jjr3j jtupel.insgesamterhaltenwirdieentscheidunguber jjr3jjr4j RegelnzurOptimierung Ahnlicheslatsichfur\["und\\"durchfuhren. unddamiteinfacheraus jr1jjr2j jjr4j: j 3)Selektionen,diediegleicheRelationbetreen,sowieentsprechendeProjektionenwerdenzusammengefat. derbeteiligtenrelationenfestgelegt. 2)SelektionenwerdensoweitwiemoglichzudenBlatterngezogen. 1)ProjektionenwerdensoweitwiemoglichzudenBlatterngezogen. BaumefurdierelationalenAusdruckeunterBerucksichtigungderZugriswege. DiezweiteMoglichkeitzuralgebrarischenOptimierungvonAnfragenbestehtinderOptimierungder 4)BeiFolgenvonVerbund-undMengenoperationenwirddieReihenfolgenachderMachtigkeit 5)EventuellauftretendegemeinsameTeilbaumesindalseingemeinsamerBaumzuberechnen. 19

22 4.3MethodenzurBeschleunigungdesZugris AufspaltungeinesBlattknotensfuralleRelationendurchAnwendungeinesOperators\Realisiere"auf denzugriswegunddierelation DieSelektionenundProjektionenkonnenauchhiermitdemOperatorRealisierevertauschtwerden. AngestellterwirdersetztdurchIndex Realisiere Angestellter SomitistderBaumformaltransformierbarineinenBaummitgunstigeremZugrisverhalten. Beispiel GesuchtsindalleProgrammierermiteinemGehaltvonmehrals100000(Mark)undmiteiner bestimmtenangestelltennummer,dasheit SeibezuglichdesAttributsBerufeinIndexI(Pers,Beruf)vorhanden.Dannkonnenwirdieobige SelektionBeruf=`Programmierer'und Anfrageumtransformierenzu (ANR=`K50'oderANR=`K55') Gehalt> und Beruf=`Programmierer' I(Pers,Beruf) Selektion Realisiere SelektionGehalt> und Pers (ANR=`K50'oderANR=`K55') 20

23 IstweiterhineinIndexI(Pers,ANR)vorhanden,soverwende Beruf=`Programmierer' Pers Realisiere SelektionGehalt> A I(Pers,Beruf) Selektion H HHHHHHH \ ANR=`K55' HHHHHHHH I(Pers,ANR) Selektion I(Pers,ANR) SelektionANR=`K50' WirbrauchenalsodieVereinigungzudemAttributAmitzweiRelationen,diebeideeinenIndex bezuglichabesitzen.derindexliefertgeradedieadressendertupel,sortiertnachdemwertdes Verbundattributes. BeimaufsteigendenDurchlaufzweiersortierterFelderkannmitlinearemAufwandpaarweisever- R1:A- R2:A- 21

24 glichenwerden(siehemergesort).wirerhaltenalsofurdasbeispielvonseite17 ProjektionName,Gehalt A 1 HHHHHHHH ProjektionName ANR Gehalt ANR ProjektionANR SelektionOrt=`Bindlach' I(Pers,ANR) Pers Realisiere Operationen,diedieselbeDateioderdasselbeZwischenergebnisbetreen,lassensichdurcheinen Abt AusInformatikIIwissenwir,danDatenmito(nlogn)Zeitaufwandsortiertwerdenkonnen.Der Aufwand,umR1undR2zuverbinden,betragtohneSortierungjR1jjR2j.MitSortierunghingegen IstkeinIndexvorhanden,sosortierebezuglichdesVerbundattributs. durchlaufenwerden. istderaufwand entsprechendmachtigenoperatorzusammenfassen.dadurchbrauchendiedateiennichtmehrfach bundoperationsinddiedoublettenzuentfernen.\realisiere"erhaltdiedaten,diebezuglicheines Indexvorhandenist.BeimSortierenkonnendoppelteRecordsleichterkanntwerden.VoreinerVer- Attributssortiertseinkonnen. DaherstelltmaneinenSortieroperatorzurVerfugung,derdanneingesetztwerdenkann,wennkein DamitistdasSortierenindenmeistenFallengunstiger. c1jr1jlogjr1j SortiereR1+c2jR2jlogjR2j {z } SortiereR2+jR1j+jR2j {z } DurchlaufelinearwiebeiIndex {z} Beispiel Sei(a1;:::;an)einebestimmteReihenfolge,unddieDatenwiefolgtaufderphysikalischenEbene gespeichert. Eslatsichnunvermeiden,dieselbeDatenseitemehrfachvonderPlatteeinzulesen,indemman diephysikalischeadressealssortierkriteriumverwendetunddielistederzuholendentupel a1;a4;a6 22 a2;a5 a3

25 danachsortiert.wennmandiedurchsortierenbewirktepermutationwiederruckgangigmacht, soerhaltmandieursprunglichereihenfolgezuruck. 23

26 vorgestelltwurden.schlagwortehierfursind 5.DiephysikalischeEbene ZurSpeicherungaufderpysikalischenEbenewerdendieVerfahrenverwendet,dieinInformatikII SortierteDaten, binaressuchen, interpolierendesbinaressuchen, 5.1SortierteDaten Hashfunktionen, B-Baume, k-d-baumeund Gridle. 80%ausgelastet.EswirdeinIndexfurdieBlockanfangeangelegt. DieDatenwerdenblockweisesortiertaufPlatteabgelegt.BeimInitialisierenwirdjederBlockzu IndexsequentielleZugriMetfoden 5.2B-Baume B-BaumesenthaltjeweilsVergleichswerteundNachfolgerzeiger. DieDatenstrukturderBayer-BaumewurdebereitsinInformatikIIbehandelt.EinKnotendes??? rwiwi+1 r vielplatz.daherpassenwenigerzeigerundvergleichswerteaufeineindexseite,undsomitwachst WennindenIndexseitendesB-BaumesbereitsvollstandigeDatensatzeliegen,sobenotigendiese diehohedesbaumesunddieanzahlderseitenzugrie.bessergeeignetsinddaherdiesogenannten j 5.3B-Baume nebendenzeigernnurvergleichswerte. HierwerdennurindenBlatternvollstandigeDatensatzegespeichert.DieIndexseitenenthalten B-Baume. Beispiel Zuspeichernsind Datensatzezuje200Bytes.DieBlockgroesei4096Byte.Im B-BaumstehenproDatenseitemindestens10undhochstens19Datensatze.DieHohedes 24

27 ( =4084)aufeineIndexseite. DieIndexseitenhaben4096Byte,alsopasseninsgesamt170Vergleichswerteund171Zeiger, Baumesistalso1+log10( )=7.DasSchlusselworthabe20Byte,einZeiger4Byte. werden.indenblatternstehen satze.diehoheistalso2+log Somitkonnenmindestens86undhochstens171NachfolgerzeigerineinemKnotengespeichert r??? r r4204 AnzahlderSeitenzugrieproAnfragedarstellt. r?? r 10<5,wasder B-BaumeindenenindenBlatternZeigerstehen Datenbereich:10Satze Indexbereich:86Satze \Zweige" {z } radressenderdaten Indexbereich vollausgenutztwerden.dasbringteineersparnisvonca.25%abzuglich12%furdieadressebene, ImB-BaumwerdennurdieAdressenderDatenabgelegt.SomitkonnendieSeitenbeidenDaten ) rsrsr alsowerdenetwa13%gewonnen.diespeicherungkannneuorganisiertwerden,esbrauchennur ProblembeimehrerenZugriswegen dieentsprechendenadressenuberschriebenwerden. EsexistierenverschiedeneZeiger,dieaufdenselbenDatensatzzeigen.VondiesemDatensatz ausgesehenistjedochnichtbekanntwelchezeigeraufihnzeigen,daherergebensichbeim LoschendiesesDatensatzesKomplikationen. 25

28 ZweiteLosung ErsteLosung lichendatensatzeaufderunterstenebenedurchzeigeraufdiedatensatzeersetzen. feststellenlat,obderdatensatzgultigistodernicht.allerdingsfuhrtdiesemethodelangfristigzueinerspeicherplatzverschwendung,esistdahervonzeitzuzeiteinereorganisationder Datenbanknotig,dasheiteswirdeineneueDatenbankohnediegeloschtenSatzeangelegt. B-Baume UmdenSpeicherplatzverbrauchfurgeloschteDatensatzezuverrringern,kannmandieeigent- rb1r AddresslistederDatensatze -w1null w2 wi ExternerSpeicher SomitistesmoglichdenphysikalischenSpeicherplatzzuverschiebenoderzuloschen.. r TID-Konzept(Tupel-Identier) EinDatensatzwirddurcheineAdressebeschrieben,diesichinzweiTeileaufteilt zeitaufwendiger. SekundarindexeserfordertdannallerdingsdenDurchlaufbeiderZugriswegeundistsomit unterdemderdatensatzimprimarindexgefundenwird,ablegen.derzugribezuglichdes AlsAlternativekonntemanbeidenSekundarindexenstattderDatensatzedenSchlusselwert, 1.AdressederDatenseite 2.NummerderAdressedesDatensatzesineinemAdressfeldaufderSeite r Nummer(1Byte) r -6::: r-datensatz 26

Erstellt von Walter Dorwald, Martin Dobmann und Helmut Hahn

Erstellt von Walter Dorwald, Martin Dobmann und Helmut Hahn Informatik III Datenbanken Prof. Dr. R. Laue Sommersemester 1992 Erstellt von Walter Dorwald, Martin Dobmann und Helmut Hahn Graphiken von Walter Dorwald, Helmut Hahn und Martin Dobmann Inhalt: 1. Einfuhrung.................................

Mehr

3. Das Relationale Datenmodell

3. Das Relationale Datenmodell 3. Das Relationale Datenmodell Das Relationale Datenmodell geht zurück auf Codd (1970): E. F. Codd: A Relational Model of Data for Large Shared Data Banks. Comm. of the ACM 13(6): 377-387(1970) DBMS wie

Mehr

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

SQL. Abfragesprache Datenmanipulation - DML

SQL. Abfragesprache Datenmanipulation - DML SQL Abfragesprache Datenmanipulation - DML SQL DML-Operationen DML = Data Manipulation Language Sprache zur Veränderung der Daten Operationen Daten selektieren Daten einfügen Daten ändern Daten löschen

Mehr

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

Mehr

ER-Modell. Entity-Relationship-Model

ER-Modell. Entity-Relationship-Model + ER-Modell Entity-Relationship-Model + Was ist ein Modell? Worte/Zitat aus einem Physikbuch: "Modelle sind also Vorstellungshilfen und Wirklichkeitshilfen, nicht die Wirklichkeit selbst." (Metzler Physik).

Mehr

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I SQL SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R VII-1 Beispielrelationen Filiale ( Name Leiter Stadt Einlagen ) Konto ( KontoNr KundenNr FilialName Saldo ) Kredit

Mehr

Details zu den Ausdrücken nach FROM, WHERE, GROUP BY und HAVING finden Sie in den Abschnitten über JOIN, WHERE und GROUP BY.

Details zu den Ausdrücken nach FROM, WHERE, GROUP BY und HAVING finden Sie in den Abschnitten über JOIN, WHERE und GROUP BY. SELECT - Der Grundbefehl zur Auswahl von Daten Die SELECT-Anweisung fragt Daten aus einer Datenbank ab und stellt diese in einer virtuellen Tabelle zur Verfügung. Diese virtuelle Tabelle, eine Menge von

Mehr

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL Datenmodifikation mit SQL Folie 45 SQL - Datenmodifikation Einfügen INSERT INTO Relation [(Attribut, Attribut,...)] VALUES (Wert, Wert,...) INSERT INTO Relation [(Attribut, Attribut,...)] SFW-Anfrage Ändern

Mehr

SQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck

SQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Fahren fort mit SQL Befehlen. Bilden Relationenalgebra auf SQL ab. So Umsetzung von Anfragen an die DB (bzw. Tabellen) möglich. SELECT

Mehr

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Programmierung 2

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Programmierung 2 SQL SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R IV-1 Beispielrelationen Filiale ( Name Leiter Stadt Einlagen ) Konto ( KontoNr KundenNr FilialName Saldo ) Kredit

Mehr

PRG2 Folien Zicari Teil 5. Einführung in Datenbanken SS 2007

PRG2 Folien Zicari Teil 5. Einführung in Datenbanken SS 2007 PRG2 Folien Zicari Teil 5 Einführung in Datenbanken SS 2007 Prof. Dott. Ing. Roberto Zicari Johann Wolfgang Goethe-Universität Frankfurt am Main PRG2 V-1 Fachbereich Informatik und Mathematik SQL SQL =

Mehr

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten Einführung in SQL Die Sprache SQL (Structured Query Language) ist eine Programmiersprache für relationale Datenbanksysteme, die auf dem ANSI-SQL-Standard beruht. SQL wird heute von fast jedem Datenbanksystem

Mehr

Übungen zur Vorlesung. Mobile und Verteilte Datenbanken. WS 2008/2009 Blatt 6. Lösung

Übungen zur Vorlesung. Mobile und Verteilte Datenbanken. WS 2008/2009 Blatt 6. Lösung Dr. rer. nat. Sven Groppe Übungen zur Vorlesung Mobile und Verteilte Datenbanken WS 2008/2009 Blatt 6 Lösung Aufgabe 1: Abgeleitete horizontale Fragmentierung Gegeben seien folgende Relationen: ABT (ANR,

Mehr

/-010 2% 3%.-&"(2#( 4#5% 6077## 7 8$$04%27.0& 905$0& :0;+

/-010 2% 3%.-&(2#( 4#5% 6077## 7 8$$04%27.0& 905$0& :0;+ ! "#$%&'() *+,-#.(! "#$%&'() *+,-#.( // /011#)1.#) 234#5: 61$03#7 8$("(1$5% 5 15#9($(-:1$5%4 # 90.+;(. 5 6. [?.] I.!"#$%&'(&) *&#+,-& "$./0-/1/

Mehr

7. Übung - Datenbanken

7. Übung - Datenbanken 7. Übung - Datenbanken Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: DBS a Was ist die Kernaufgabe von Datenbanksystemen? b Beschreiben Sie kurz die Abstraktionsebenen

Mehr

Endgültige Gruppeneinteilung Kohorte Innere-BP Sommersemester 2016 (Stand: )

Endgültige Gruppeneinteilung Kohorte Innere-BP Sommersemester 2016 (Stand: ) A A1a 2197120 on on A A1a 2311330 on on on on on on on A A1a 2316420 on on A A1a 2332345 on on on on on on on A A1a 2371324 on on on on on on on A A1a 2382962 on on A A1a 2384710 on on on on on on on A

Mehr

Abfragen (Queries, Subqueries)

Abfragen (Queries, Subqueries) Abfragen (Queries, Subqueries) Grundstruktur einer SQL-Abfrage (reine Projektion) SELECT [DISTINCT] {* Spaltenname [[AS] Aliasname ] Ausdruck} * ; Beispiele 1. Auswahl aller Spalten SELECT * ; 2. Auswahl

Mehr

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 6. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 Aufgabe 1: Rekursion Betrachten Sie die folgende Tabelle

Mehr

Schlüssel. Definition: Ein Schlüssel (key) einer Relation r(r) ist eine Til Teilmenge K von R, so dass für je zwei verschiedene Tupeln t 1

Schlüssel. Definition: Ein Schlüssel (key) einer Relation r(r) ist eine Til Teilmenge K von R, so dass für je zwei verschiedene Tupeln t 1 Schlüssel Definition: Ein Schlüssel (key) einer Relation r(r) ist eine Til Teilmenge K von R, so dass für je zwei verschiedene Tupeln t 1 und t 2 r gilt: - t 1 (K) t 2 (K) und - keine echte Teilmenge K'

Mehr

Labor 3 - Datenbank mit MySQL

Labor 3 - Datenbank mit MySQL Labor 3 - Datenbank mit MySQL Hinweis: Dieses Labor entstand z.t. aus Scripten von Prof. Dr. U. Bannier. 1. Starten des MySQL-Systems MySQL ist ein unter www.mysql.com kostenlos erhältliches Datenbankmanagementsystem.

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2008 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

(Prüfungs-)Aufgaben zu formale Sprachen

(Prüfungs-)Aufgaben zu formale Sprachen (Prüfungs-)Aufgaben zu formale Sprachen (siehe auch bei den Aufgaben zu endlichen Automaten) 1) Eine Grammatik G sei gegeben durch: N = {S, A}, T = {a, b, c, d}, P = { (S, Sa), (S, ba), (A, ba), (A, c),

Mehr

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

Formale Sprachen, Automaten, Compiler

Formale Sprachen, Automaten, Compiler Formale Sprachen, Automaten, Compiler Berufsakademie Lörrach, TIT06-3. Semester Übung 1 -> LÖSUNGSVORSCHLAG ÜA1.1. Die "normalen" Dezimalziffern, also Σ = { 0, 1,..., 9, ist sicher ein Alphabet, aber auch

Mehr

Telefonbuchdaten. Leitungsdaten Antennendaten Mitarbeiterdaten Immobiliendaten Telefon-Verbindungsdaten Internet-Verbindungsdaten

Telefonbuchdaten. Leitungsdaten Antennendaten Mitarbeiterdaten Immobiliendaten Telefon-Verbindungsdaten Internet-Verbindungsdaten Datenbanken? Datenbanken! Vertragsdaten Kundendaten Rechnungsdaten Telefonbuchdaten Marketingdaten Leitungsdaten Antennendaten Mitarbeiterdaten Immobiliendaten Telefon-Verbindungsdaten Internet-Verbindungsdaten

Mehr

SQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis.

SQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis. SQL Lehr- und Forschungseinheit Datenbanken und Informationssysteme Ziele Grundlagen von SQL Beziehung zur relationalen Algebra SELECT, FROM, WHERE Joins ORDER BY Aggregatfunktionen Lehr- und Forschungseinheit

Mehr

Datenbanken im WI-Unterricht mit

Datenbanken im WI-Unterricht mit Datenbanken im WI-Unterricht mit Inhaltsverzeichnis 1 ER-Modell - Entity Relationship Modell 1 1.1 Entitäten................................................. 2 1.2 Relationen................................................

Mehr

Datenbanken. Zusammenfassung. Datenbanksysteme

Datenbanken. Zusammenfassung. Datenbanksysteme Zusammenfassung Datenbanksysteme Christian Moser Seite 1 vom 7 12.09.2002 Wichtige Begriffe Attribut Assoziation API Atomares Attribut Datenbasis DBMS Datenunabhängigkeit Datenbankmodell DDL DML DCL ER-Diagramm

Mehr

Daten Bank. 2. Vorlesung. Dr. Karsten Tolle PRG2 SS 2015

Daten Bank. 2. Vorlesung. Dr. Karsten Tolle PRG2 SS 2015 Daten Bank 2. Vorlesung Dr. Karsten Tolle PRG2 SS 2015 Letzte Vorlesung Grundbegriffe SQL create table insert select Dr. Karsten Tolle PRG2 SS 2015 2 Heute Übersicht Modellierung (ER-Diagramme) Entitäten

Mehr

Grundbegriffe der Informatik Tutorium 2

Grundbegriffe der Informatik Tutorium 2 Grundbegriffe der Informatik Tutorium 2 Tutorium Nr. 32 Philipp Oppermann 13. November 2013 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Kapitel 6: Das E/R-Modell

Kapitel 6: Das E/R-Modell Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2013/2014 Vorlesung: Prof. Dr. Christian Böhm Übungen:

Mehr

6. Sichten, Integrität und Zugriffskontrolle. Vorlesung "Informa=onssysteme" Sommersemester 2015

6. Sichten, Integrität und Zugriffskontrolle. Vorlesung Informa=onssysteme Sommersemester 2015 6. Sichten, Integrität und Zugriffskontrolle Vorlesung "Informa=onssysteme" Sommersemester 2015 Überblick Sichten Integritätsbedingungen Zugriffsrechte SQL- Schema und SQL- Katalog Das Informa=onsschema

Mehr

Informatik 12 Datenbanken SQL-Einführung

Informatik 12 Datenbanken SQL-Einführung Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung

Mehr

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

Kapitel DB:VI (Fortsetzung)

Kapitel DB:VI (Fortsetzung) Kapitel DB:VI (Fortsetzung) VI. Die relationale Datenbanksprache SQL Einführung SQL als Datenanfragesprache SQL als Datendefinitionssprache SQL als Datenmanipulationssprache Sichten SQL vom Programm aus

Mehr

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur : Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Kapitel 3: Datenbanksysteme : PDDr. Peer

Mehr

Seminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle.

Seminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle. Seminar 2 SQL - DML(Data Manipulation Language) und DDL(Data Definition Language) Befehle. DML Befehle Aggregatfunktionen - werden auf eine Menge von Tupeln angewendet - Verdichtung einzelner Tupeln yu

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

ABTEILUNGS- ABTEILUNGS- LEITER NAME

ABTEILUNGS- ABTEILUNGS- LEITER NAME Übungsaufgaben Übungsaufgabe 1 - Normalisierung - Gegeben ist folgende unnormalisierte Relation, die Daten über Mitarbeiter und deren Abteilungszughörigkeit enthält. Weiterhin sind die Beteiligung(en)

Mehr

Idee: Wenn wir beim Kopfknoten zwei Referenzen verfolgen können, sind die Teillisten kürzer. kopf Eine Datenstruktur mit Schlüsselwerten 1 bis 10

Idee: Wenn wir beim Kopfknoten zwei Referenzen verfolgen können, sind die Teillisten kürzer. kopf Eine Datenstruktur mit Schlüsselwerten 1 bis 10 Binäre Bäume Bäume gehören zu den wichtigsten Datenstrukturen in der Informatik. Sie repräsentieren z.b. die Struktur eines arithmetischen Terms oder die Struktur eines Buchs. Bäume beschreiben Organisationshierarchien

Mehr

Übersicht der wichtigsten MySQL-Befehle

Übersicht der wichtigsten MySQL-Befehle Übersicht der wichtigsten MySQL-Befehle 1. Arbeiten mit Datenbanken 1.1 Datenbank anlegen Eine Datenbank kann man wie folgt erstellen. CREATE DATABASE db_namen; 1.2 Existierende Datenbanken anzeigen Mit

Mehr

Domänen: Grundtypen, alle vordefiniert, z.b. INTEGER ~ integer NUMERIC (p,s) p: precision, s: scale (nach,) etc.

Domänen: Grundtypen, alle vordefiniert, z.b. INTEGER ~ integer NUMERIC (p,s) p: precision, s: scale (nach,) etc. Kapitel 6 Relationale DB-Sprache SQL SEQUEL: Structured English Query Language, 70er Jahre SQL: System R, SQL/DS, TransBase, Oracle... ANSI Standards 1, 2, 3 6.1 Daten-Definitionssprache DDL Domänen: Grundtypen,

Mehr

SQL als Zugriffssprache

SQL als Zugriffssprache SQL als Zugriffssprache Der Select Befehl: Aufbau Select- und From-Klausel Where-Klausel Group-By- und Having-Klausel Union Join-Verbindung Order-By-Klausel Der Update-Befehl Der Delete-Befehl Der Insert-Befehl

Mehr

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt DBS ::: SERIE 5 Die Relation produkt enthält Hersteller, Modellnummer und Produktgattung (pc, laptop oder drucker aller Produkte. Die Modellnummer ist (der Einfachheit halber eindeutig für alle Hersteller

Mehr

Konstante Relationen

Konstante Relationen Konstante Relationen values-syntax erzeugt konstante Relation values ( [, Konstante] * )[, ( [, Konstante] * )]* Beispiel values (1, eins ), (2, zwei ), (3, drei ); Resultat ist eine

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 Einführung Beispiel: Aussagenlogische Formeln Aus dem Logikteil: Definition (Syntax

Mehr

Datenbankanfragen und -operationen mittels SQL

Datenbankanfragen und -operationen mittels SQL Datenbankanfragen und -operationen mittels SQL Über den verschiedenen Tabellen einer Datenbank werden Operationen ausgeführt, die immer wieder eine Tabelle als Ergebnis zurückgeben. Mathematisch modelliert

Mehr

Datenbanksysteme Kapitel 5: SQL - Grundlagen

Datenbanksysteme Kapitel 5: SQL - Grundlagen Datenbanksysteme Kapitel 5: SQL - Grundlagen Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Prof. Peter Dr. Chamoni Peter

Mehr

E i n b a u-b a c k o f e n O I M 2 2 3 0 1 B i t t e z u e r s t d i e s e B e d i e n u n g s a n l e i t u n g l e s e n! S e h r g e e h r t e K u n d i n, s e h r g e e h r t e r K u n d e, v i e

Mehr

Datenbanksysteme Kapitel 5: SQL Grundlagen Teil 1

Datenbanksysteme Kapitel 5: SQL Grundlagen Teil 1 Datenbanksysteme Kapitel 5: SQL Grundlagen Teil 1 Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Prof. Dr. Dr. Peter Peter

Mehr

SELECT dient dazu, aus einer vorhandenen Datenbank bestimmte Spalten und Zeilen auszugeben es handelt sich also um eine Auswahlabfrage.

SELECT dient dazu, aus einer vorhandenen Datenbank bestimmte Spalten und Zeilen auszugeben es handelt sich also um eine Auswahlabfrage. SELECT-FROM SELECT dient dazu, aus einer vorhandenen Datenbank bestimmte Spalten und Zeilen auszugeben es handelt sich also um eine Auswahlabfrage. Inhaltsverzeichnis 1 Der grundlegende Aufbau 2 Doppelte

Mehr

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de 08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren

Mehr

Datenbank- und Informationssysteme. Lösungsvorschläge zu Übungsblatt 2. Sommersemester 1999. CREATE DOMAIN KennzeichenDomain AS VARCHAR(9);

Datenbank- und Informationssysteme. Lösungsvorschläge zu Übungsblatt 2. Sommersemester 1999. CREATE DOMAIN KennzeichenDomain AS VARCHAR(9); Institut für Angewandte Informatik AIFB und Formale Beschreibungsverfahren Universität Karlsruhe (TH) Prof. Dr. W. Stucky U. Schmidle Tel.: 0721 / 608-3812, 3509 Fax.: 0721 / 693717 e-mail: stucky schmidle

Mehr

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language: SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In

Mehr

Kapitel 6: Das E/R-Modell. Skript 2003 Christian Böhm

Kapitel 6: Das E/R-Modell. Skript 2003 Christian Böhm Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Wintersemester 2003/2004 für Datenbanksysteme 2002 Christian Böhm, UMIT : Christian

Mehr

Das Relationen-Modell. Prof. Dr. T. Kudraß 1

Das Relationen-Modell. Prof. Dr. T. Kudraß 1 Das Relationen-Modell Prof. Dr. T. Kudraß 1 Einführung Geht auf klassische Arbeit von Codd zurück (1970) Meistgenutztes Datenmodell Anbieter: IBM (DB2), Informix, Microsoft (SQL-Server), Sybase, Oracle

Mehr

Datenbanken. Sommersemester 2010 Probeklausur

Datenbanken. Sommersemester 2010 Probeklausur Prof. Dr. V. Linnemann Christoph Reinke Universität zu Lübeck Institut für Informationssysteme Lübeck, den 29. Juli 2010 Datenbanken Sommersemester 2010 Probeklausur Hinweise: Es ist sinnvoll, die Aufgaben

Mehr

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Übung, Sommersemester 2013 29. April 2013 - MySQL 2 Sebastian Cuy sebastian.cuy@uni-koeln.de Aufgaben Anmerkungen Best practice: SQL Befehle

Mehr

OM Datenbanken. OM Datenbanken. 8.1 Was ist ein Datenbanksystem? Motivation

OM Datenbanken. OM Datenbanken. 8.1 Was ist ein Datenbanksystem? Motivation 1 Inhalt: Relationale Datenbanken 8.1 Was ist ein Datenbanksystem? 8.2 Relationale Datenbanksysteme 8.3 Abbildung des objektorientierten Modells auf Tabellen 2 8.1 Was ist ein Datenbanksystem? Motivation

Mehr

SQL und MySQL. Kristian Köhntopp

SQL und MySQL. Kristian Köhntopp SQL und MySQL Kristian Köhntopp Wieso SQL? Datenbanken seit den frühen 1950er Jahren: Hierarchische Datenbanken Netzwerkdatenbanken Relationale Datenbanken = SQL Relational? 10 9 8 7 6 f(y) := y = x r(y)

Mehr

Kapitel 6: Das E/R-Modell

Kapitel 6: Das E/R-Modell Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Dsteme Skript zur Dsteme I Wintersemester 2010/2011 Kap/R-Modell : PD Matthias Schubert Übungen: Thomas Bernecker,

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2018 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2015 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

3. Übung. Einführung MS Access. TU Dresden - Institut für Bauinformatik Folie-Nr.: 1

3. Übung. Einführung MS Access. TU Dresden - Institut für Bauinformatik Folie-Nr.: 1 WP3-13 Bauinformatik-Vertiefte Grundlagen 3. Übung Einführung MS Access Folie-Nr.: 1 Allgemeines Microsoft Access ist ein Datenbank-Management-System (DBMS) zur Verwaltung von Daten in Datenbanken und

Mehr

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL Relationales Modell: SQLDDL SQL als Definitionssprache SQLDDL umfaßt alle Klauseln von SQL, die mit Definition von Typen Wertebereichen Relationenschemata Integritätsbedingungen zu tun haben Externe Ebene

Mehr

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen.

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. Datenbankabfragen (Query) mit SQL (Structured Query Language) 1 Aufbau des SELECT-Befehls Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. SQL-Syntax: SELECT spaltenliste FROM tabellenname

Mehr

Datenbanksysteme 2013

Datenbanksysteme 2013 Datenbanksysteme 2013 Kapitel 8: Datenintegrität Vorlesung vom 14.05.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Datenintegrität Statische Bedingung (jeder Zustand) Dynamische

Mehr

Übung Datenbanken in der Praxis. Relationale Algebra

Übung Datenbanken in der Praxis. Relationale Algebra Relationale Algebra Folie 16 Relationale Algebra - Aufgabe 1 Gegeben seien die Relationen R1, R2 und R3. Erstellen Sie die Ergebnisrelationen für folgende Operationen und bestimmen Sie jeweils den Grad

Mehr

Datenbanksysteme I Übung: Relationaler Datenbankentwurf. Jana Bauckmann

Datenbanksysteme I Übung: Relationaler Datenbankentwurf. Jana Bauckmann Datenbanksysteme I Übung: Relationaler Datenbankentwurf Jana Bauckmann Bei den Abgaben... 2 Dateiname blattaufgabe.pdf blatt2aufgabe1meiermueller.pdf nicht blatt1-aufgabe1-foo.pdf

Mehr

3 Query Language (QL) Einfachste Abfrage Ordnen Gruppieren... 7

3 Query Language (QL) Einfachste Abfrage Ordnen Gruppieren... 7 1 Data Definition Language (DDL)... 2 1.1 Tabellen erstellen... 2 1.1.1 Datentyp...... 2 1.1.2 Zusätze.... 2 1.2 Tabellen löschen... 2 1.3 Tabellen ändern (Spalten hinzufügen)... 2 1.4 Tabellen ändern

Mehr

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language)

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language) Einführung in SQL 1. Grundlagen Structured Query Language Viele Dialekte Unterteilung: i. DDL (Data Definition Language) ii. iii. DML (Data Modifing Language) DRL (Data Retrival Language) 1/12 2. DDL Data

Mehr

Modul 122 VBA Scribt.docx

Modul 122 VBA Scribt.docx Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval

Mehr

Grundlagen in C# und.net

Grundlagen in C# und.net Grundlagen in C# und.net Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 FB Automatisierung und Informatik:

Mehr

Grundlagen in C# und.net

Grundlagen in C# und.net Grundlagen in C# und.net Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 FB Automatisierung und Informatik:

Mehr

Normalformen. Was sind Kriterien eines guten Entwurfs? So wenig Redundanz wie möglich. Keine Einfüge-, Lösch-, Änderungsanomalien

Normalformen. Was sind Kriterien eines guten Entwurfs? So wenig Redundanz wie möglich. Keine Einfüge-, Lösch-, Änderungsanomalien Normalformen Was sind Kriterien eines guten Entwurfs? So wenig Redundanz wie möglich Keine Einfüge-, Lösch-, Änderungsanomalien IX-19 Erste und Zweite Normalform Beispiel: (nicht 1. Normalform) vorrat

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 05 Übung zur Vorlesung Grundlagen: Datenbanken im WS16/17 Harald Lang, Linnea Passing (gdb@in.tum.de

Mehr

Teil I. Lineare Algebra I Vorlesung Sommersemester Olga Holtz. MA 378 Sprechstunde Fr und n.v.

Teil I. Lineare Algebra I Vorlesung Sommersemester Olga Holtz. MA 378 Sprechstunde Fr und n.v. Teil I Lineare Algebra I Vorlesung Sommersemester 2011 Olga Holtz MA 378 Sprechstunde Fr 14-16 und nv holtz@mathtu-berlinde Sadegh Jokar MA 373 Sprechstunde, Do 12-14 und nv jokar@mathtu-berlinde Kapitel

Mehr

Lösung zu Aufgabe 6. Lösung:

Lösung zu Aufgabe 6. Lösung: Lösung zu Aufgabe 6 1.Ihre Aufgabe ist es nun, diese Daten in das bestehende Datenbank-Schema zu integrieren und dazu die entsprechenden Tabellen zu erstellen. Abgabe: neue Tables 2 P Lösung: CREATE TABLE

Mehr

Prüfung Informatik D-MATH/D-PHYS :00 17:00

Prüfung Informatik D-MATH/D-PHYS :00 17:00 Prüfung Informatik D-MATH/D-PHYS 9. 8. 0 5:00 7:00 Prof. Bernd Gartner Kandidat/in: Name:. Vorname:. Stud.-Nr.:. Ich bezeuge mit meiner Unterschrift, dass ich die Prufung unter regularen Bedingungen ablegen

Mehr

MySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben.

MySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. MySQL-Befehle 1. Einleitung In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. 2. Arbeiten mit Datenbanken 2.1 Datenbank anlegen Eine Datenbank kann man wie folgt

Mehr

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS DATENMODELLIERUNG (184.685) GRUPPE A MUSTERLÖSUNG 06.05.2014 Matrikelnr.

Mehr

2. Datenmodellierung mit ERM. Motivation für Datenmodellierung. Begriffsklärung. Kardinalität/Komplexität von Beziehungstypen

2. Datenmodellierung mit ERM. Motivation für Datenmodellierung. Begriffsklärung. Kardinalität/Komplexität von Beziehungstypen 2. Datenmodellierung mit ERM Motivation für Datenmodellierung Begriffsklärung Kardinalität/Komplexität von Beziehungstypen Erweiterungen des E/R-Modells Darstellung von Attributen/Beziehungen als Entitytypen

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse & Einführung Online Analytical Processing (OLAP) (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse M. Lange, S.

Mehr

BMU 2005-673. J.A.C. Broekaert. J. Feuerborn. A. Knöchel. A.-K. Meyer. Universität Hamburg, Institut für Anorganische und Angewandte Chemie

BMU 2005-673. J.A.C. Broekaert. J. Feuerborn. A. Knöchel. A.-K. Meyer. Universität Hamburg, Institut für Anorganische und Angewandte Chemie BMU 2005-673 Hochaufgelöste ortsabhängige Multielemtanalysen von mit allgemeintoxischen und radiotoxischen Elementen belasteten Organen/Geweben mit Hilfe der Röntgenmikrosonde und Elektronenmikroskopie

Mehr

Übungsaufgaben mit Lösungen

Übungsaufgaben mit Lösungen Abt. Wi.-Inf. II Wirtschaftsinformatik II: SQL 1 Übungsaufgaben mit Lösungen 1) Ausgabe sämtlicher Spalten der Tabelle DEPARTMENT. SELECT * FROM DEPARTMENT 2) Ausgabe aller Projektnummern und Projektnamen.

Mehr

Informatik Datenbanken SQL-Einführung

Informatik Datenbanken SQL-Einführung Informatik Datenbanken SQL-Einführung Gierhardt Inhaltsverzeichnis 1 Vorbemerkungen 1 2 Auswahl-Abfragen mit SELECT 2 2.1 Selektion...................................... 2 2.2 Projektion.....................................

Mehr

SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)

SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans schmidt@cs.ro

Mehr

Datenbanken 1 Sommersemester 2014/

Datenbanken 1 Sommersemester 2014/ Fachbereich für Computerwissenschaften Prof. Dr. Nikolaus Augsten Jakob-Haringer-Str. 2 5020 Salzburg, Austria Telefon: +43 662 8044 6347 E-Mail: nikolaus.augsten@sbg.ac.at Datenbanken 1 Sommersemester

Mehr

Datenbanken: Relationales Datenbankmodell RDM

Datenbanken: Relationales Datenbankmodell RDM Das RDM wurde in den 70'er Jahren von Codd entwickelt und ist seit Mitte der 80'er Jahre definierter Standard für Datenbanksysteme! Der Name kommt vom mathematischen Konzept einer Relation: (Sind A, B

Mehr

SQL structured query language

SQL structured query language Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query

Mehr

Datenbankensysteme Aufgabenblatt 2

Datenbankensysteme Aufgabenblatt 2 Datenbanken Seite 1 von 1 Aufgabe 1: Datenbankensysteme Aufgabenblatt 2 Es folgt das ER-Modell unter Berücksichtigung der 1. 3. NF: Nummer Semester Matrikel n 1 Matrikel Anmeldung Veranstaltung cn 1 für

Mehr

Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL

Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell Jetzt: -> Formulierung in DDL Daten-Definitionssprache (DDL) DDL ist Teil von SQL (Structured

Mehr

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1) Vorlesung #3 SQL (Teil 1) Fahrplan Wiederholung/Zusammenfassung Relationales Modell Relationale Algebra Relationenkalkül Geschichte der Sprache SQL SQL DDL (CREATE TABLE...) SQL DML (INSERT, UPDATE, DELETE)

Mehr