Datenbankmanagementsysteme

at Universität Duisburg-Essen

Join course
617
Discussion
Documents
Flashcards
Ist das der Duisburger oder Essener Datenbankenkues?
Essen
Noten sind seit gestern online :) hoffentlich haben alle bestanden !!
Arbeiten beim Prüfungsamt nicht genug Leute oder was ist da los?
View 5 more comments
okay danke. 60cp muss man nach dem 4. semester haben oder?
ich hoffe hab halt mit den 9 von dbms genau 60
Könnt ihr eure Noten vom NT schon im HisOne sehen?
View 1 more comment
Wird eig immer erst nach der Einsicht eingetragen
Das dauert aber auch echt lang, bis die Noten beim Prüfungsamt sind oder? Hätte ich das gewusst, hätt ich doch Live Korrektur angekreuzt. Ist mir nur immer zu aufregend. 😂
Die Noten sind raus, scheint so als wäre die bestehensgrenze runtergesetzt!
View 1 more comment
Lol
Echt? Dann habe ich doch wieder ein wenig Hoffnung, knapp bestanden haben zu können.
Leute, die Korrektur ist fertig!!
View 1 more comment
Höchste Punktzahl 72
Hab gerade per Telegramm die Nachricht bekommen eine 4.0 zu haben mit 37 Punkten.
Ist es jetzt eigentlich sicher das die bestehgrenze bei 40,5 Punkten liegt?
Es ist höchst wahrscheinlich, aber garantieren tu ich's nicht, erfahren werden wir es vermutlich in 1-2 Tagen
so langsam könnten sie mal weiter korrigieren 😂...
View 15 more comments
also wenn die weiterhin nach ner halben Stunde korrigieren abbrechen werden die wohl nie fertig -.-
Die Korrektur meiner Klausur ist auch abgeschlossen und wie erwartet hat es nicht ausgereicht.
weiß zufällig jemand wie der Notenschlüssel ausschaut, den der Lehrstuhl verwendet?
Weiss jemand mit wie vielen punkten man besteht?
View 3 more comments
schwer zu sagen, der ein oder andere wird bestimmt so kulant sein, aber drauf setzen würde ich nicht
Letztes Jahr hatte ich 39,5 bekommen also brauchte eine Punkte zu bestehen, ich ging zur Einsicht und hab mit dem Prof geredet aber hatte mir nicht geholfen
Weiß jemand weshalb die Livekorrektur nicht fortgesetzt wird? Oder ggf. wann es weiter geht?
wird morgen fortgesetzt
sehen ja richtig toll aus, die aktuellen Ergebnisse zu Dbms. Glaube kaum, dass sich das noch spürbar zum positiven entwickelt
Wann genau ist die DBMS Klausur? Am 27. oder 30. ?
View 4 more comments
Chillich bro, aufstehen krönchen richten und nächstes Jahr die Klausur rasieren und ne 1.0 kassieren 💪
Aber nicht das er jetzt unnötig Maluspunkte gesammelt hat, wenn er angemeldet war aber die Klausur verpasst hat
Rein vom Korrekturstand kann man wohl sagen, dass die Klausur insgesamt schlechter ausfällt als zum vt.
Ist alle Jahre wieder so
Dieses Semester hat der NT reingehauen.
Stand jetzt haben 13 Leute bestanden. Viele sind noch knapp an der Grenze und jrde Menge Leute liegen bei +-20 Punkten. Zum vt war das nicht so negativ. Hoffen wir auf das beste
View 1 more comment
woher weisst du das nur 13 leute bestanden haben ? Oder beziehst du deine Aussage auf die Livekorrektur ?
der meinte die haben mehr als 40,5 Punke --> bestanden
Hallo, weiss einer erfahrungsgemäß wann so ungefähr mit Livekorrektur gestartet wird?
View 13 more comments
Super danke dir
Kein Thema
Was hattet ihr als Schlüsselkandidaten?
View 2 more comments
welche Abhängigkeiten verstoßten gegen welche Normalform?
Ich glaube 1, 2 haben gegen die zweite und 3, 4 haben gegen die dritte Normalform verstoßen.
Was ne Klausur er stellt 😂😂
View 7 more comments
@Wechseldatenträger Ich stimme dir zu, das hatte nichts mit ER-Diagrammen zu tun.
Genau, bei 1:n wird der Primärschlüssel der 1er Entität als Fremdschlüssel in die n Entität übernommen. Bei n:m Beziehungen wird eine separate Tabelle erstellt mit den Primärschlüsseln beider Entitäten als Primär und Fremdschlüssel der beiden Entitäten wenn ich mich recht erinnere. Die 1:1 Beziehung habe ich so belassen.
Warum lädt man die VT Klausur zur Vorbereitung hoch, wenn fast nichts davon drankommt...
View 3 more comments
Kann ich verstehen. Hab jede Mengen Leuten die Schedules Aufgaben erklärt und viele haben wohl viel Zeit damit verbracht die zu verstehen. Und dann wird die einfach nicht abgefragt.
Wieso? Mindestens die Hälfte der Klausur war Dank dem SQL Teil quasi gleich. 😜 Normalisierung kam auch schon öfters vor. Ich denke, man sollte sich davon loseisen, nur das zu lernen, was in der Vergangenheit dran kam, um nicht Gefahr zu laufen, von der Klausur überrascht zu werden. Im Prinzip könnte immer alles abgefragt werden. Dementsprechend ist die Kritik unangebracht, auch wenn ich mit meiner Vorbereitung auf die Klausur suboptimal vorankam und die Aufgaben aufgrunddessen nicht zufriedenstellend bearbeiten konnte. ☹ Von daher suche ich den Fehler weniger in den zur Verfügung gestellten Probeklausuren, Übungen, etc., sondern vielmehr darin, wie ich mich damit auf die Klausur vorbereitet habe und es zukünftig mal besser machen kann.
Wie viele Punkte braucht man nochmal zum bestehen? Sind die Punkte auch runtergesetzt wie beim VT oder hat das nichts mit dem NT zu tun?
View 3 more comments
Das ist dann schon arg unwahrscheinlich. Die sind ja schon so großzügig und setzen runter auf 40%. Wenn die noch mal runtersetzen würden, können die die Prüfung gleich absagen und jeden bestehen lassen
NT letztes Jahr auch 40,5
Wie fandet ihr die Klausur im Vergleich zu den vorherigen Klausuren?
SQL Teil gut machbar, Rest dahingehend unfair, dass in all den Altklausuren fast immer die selben Themen drankamen bis auf ein paar Teilpunkte, hier waren diesmal ganz andere Themen bei. Hätte man sich mit beschäftigt wären die aber auch nicht schwer gewesen.
Was kam alles vor?
View 4 more comments
Scheduling kam vor... Man sollte zwei Schedules zeichnen für Fortgepflanzte Rollback und Deadlock.
ja schon klar aber das kam auch in all den letzten Klausuren vor + dazu ne ganze Scheduling Aufgabe mit 8 9 10 Punkten
Kamen ernsthaft Operatorbäume und etwas zu ER Modell vor? Schedule kam wohl überhaupt nicht dran? Wenn das stimmt, dann ist das die erste Klausur seit Jahren, die so krass von den bisherigen abgewichen ist
Gut, dass ich zum Vt geschrieben habe. Hört sich ja ganz schlimm an. Zum Vt konnte man, wenn einem der Sql Teil probleme bereitet hat, mit all dem anderen kram sehr gut punkten. So hab ich dann auch bestanden. Aber zum Nachtermin wär ich wohl kläglich gescheitert
ER-Diagramme kamen nicht dran.
Die Ruhe vor dem Sturm...
View 5 more comments
Im R14 war das doch oder?
Ja
Nennen Sie die Schichten der Drei-Ebenen-Schemaarchitektur nachANSI und nennen Sie zu jeder der Schichten ein dazugehöriges SQL-Konstrukt. Externe, Interne, Konzeptionelle Ebene, was wären dazugehörige SQL Konstrukte?
Extern = Views und Subschemas Konzeptionell = Tabellen Intern = Index, Segmente...
Dankee
Jemand schon die Lösung für die Aufgabe 5?
View 26 more comments
Müsste bei der Lösung von ganz oben nicht zum Beispiel ganz unten rechts nicht eher X2 W2 U2 stehen (in der Reihenfolge) anstatt U2 X2 W2. Das Unlocken passiert doch zum Schluss oder ist das egal?
@Anonyme Zapfsäule ja, du hast Recht. Da habe ich mich vertan
Könnte man nicht nachdem W1(x) unlocked wird, mit dem R2(x) weitermachen?
View 1 more comment
Ich bin zwar seit der Klausur im VT raus aus dem Thema aber ich meine das geht nicht wegen R2(z), das noch in der Warteliste ist. Oben hast du bei der Spalte z ja noch einen x lock
Wäre das R2(z) und nicht in der Warteliste, wäre es hier richtig, erst die Warteliste abzuarbeiten, bevor W2(z)?
No area was marked for this question
Hi, Die lösung zu dem geschlächterverhältnis (g) gibt mir fehlermeldung bei dem join befehl... ich habs versucht mit nem SELECT crid, sum(case when `gid` = '2' then 1 else 0 end)/sum(case when `gid` = '1' then 1 else 0 end) as ratio FROM crewmember join person group by crid having sum(case when `gid` = '1' then 1 else 0 end) > 0 and sum(case when `gid` = '2' then 1 else 0 end)> 0 aber da kommt auch was falsches bei raus... (überall 1.66666666) wobei es 1:1 undef. und 1:1 is (bei meiner übungstabelle) Ideen?
View 2 more comments
Laut deiner Fehlermeldung hast du wohl MySQL anstatt PostgreSQL ausgewählt. Außerdem rate ich dir davon ab SQLFiddle zu benutzen, das ist nicht gerade gut... Und die Tabellen existieren sehr wohl innerhalb des Queries, denn die jeweiligen Tabellen wurden im FROM-Teil so benannt.
Nach minimaler Abänderung. Und vorallem dem Umstellen von MySQL auf PostgreSQL.
wann benutzt man xlock wann slock beim scheduling?
S (Shared Lock) wird verwendet, um das Lesen zu erlauben. Es können mehrere Shared Locks auf demselben Objekt existieren, es darf aber auch nur gelesen, nicht geschrieben werden. X (Exclusive Lock) wird verwendet, um das Schreiben zu erlauben. Es darf allerdings nur ein einziges Exclusive Lock und gleichzeitig kein Shared Lock auf demselben Objekt existieren, um zu schreiben.
Könnte mir jmd bitte sagen in welchen Raum befindest sich die Klausur?
RE14 wie immer
R14 R00 A04
Leute, kann mir einer bitte helfen? Irgendwie versteh ich nicht, was der Unterschied zwischen einem "Non-repeatable Read" und dem "Phantom-Problem" sein soll. Irgendwie hört sich beides für mich gleich an...
View 1 more comment
Vielen vielen Dank Qre :) Also liegt der Unterschied darin, dass beim Non-repeatable read Attribute geändert wurden und beim Phantomprobleme Reihen hinzugefügt/verändert wurden? Also nach deinem Verständnis.
So habe ich es verstanden, ja ;) Also Non-repeatable read = alte Datensätze verändert. Phantompeoblem = neue Datensätze hinzugefügt (eventuell auch gelöscht)
Kann sonst noch was bei der Scheduling Aufgabe vorkommen? - Zweiphasensperrprotokoll mit Preclaiming - Striktes Zweiphasensperrprotokoll
die ersten zwei Punkte sind identisch und außer striktem 2pl und Preclaiming kann eig nichts dran kommen
Zum nt kann auch das strikte 2pl mit deadlock kommen
kennt jemand ein beispiel für preclaiming das zu einem fortgepflanzten rollback führt ?
View 5 more comments
Mir ist nicht ganz klar, wieso da W1(z) steht. Würde es nicht mehr Sinn ergeben wenn dort W1(x) steht oder verstehe ich etwas falsch?
Spielt keine Rolle, es geht nur darum das Transaktion 2 etwas genutzt hat ( in dem Fall x), welches auch von Transaktion 2 genutzt wurde. Sobald dann der Rollback eintritt, muss T2 auch zurückgesetzt werden, da das x von beiden benutzt wurde.
Hat jemand hier zu die Lösung?😊
So hab ich das gelöst: select characterid, 0 num from teaches where characterid not in( select distinct characterid from Student) union (select characterid, count(*) from Student where characterid in( select distinct characterid from Teaches )Group by characterid)
Viel Glück euch allen für die Klausur morgen
Dir auch, falls du auch schreibst.👌😊
Sollte man hier auf die Frage, wie das garantiert wird, schreiben, dass es standardmäßig vom DBMS zurückgewiesen wird, wenn man einen Wert als Fremdschlüssel eintragen möchte, der als Primärschlüssel nicht existiert? Würde das reichen?
Primärschlüssel **in der Bezugstabelle** würde ich ergänzen. Allerdings kann man auch die "CASCADE"-Funktion hier nennen. Das Löschen von allen Referenzen und den dazugehörigen Datensätzen, falls das verwiesene Objekt gelöscht wird, dient ebenfalls zur Wahrung der referentiellen Integrität. Beispiel: Student wird aus der Tabelle "Studenten" gelöscht, mittels CASCADE werden auch alle Kursbelegungen der zugehörigen Matrikelnummer aus der Tabelle "Kursbelegungen" gelöscht. Ich würde aber mal davon ausgehen, dass es reicht eines der beiden zu nennen :?
Select distinct crID from Character natural join CrewMember natural join Crew where gID not in (Select distinct gID from Character natural join CrewMember natural join Crew where gID = 2) Ist meine Lösung richtig ?
View 4 more comments
ich hätte das so gelöst select distinct crid from crewmember natural join character where gid!=2 ist denke ich bis unkomplizierter als mit unterabfragen
Select distinct from crewmember where cid not in (Select cid from character where gid = 2) könnte man das auch so lösen ?
No area was marked for this question
Ist der Trigger richtig?
View 5 more comments
@Anonymer Notenschlüssel Direkt darüber steht doch der "CREATE TRIGGER"-Block.
stimmt sorry, habe ich nicht gesehen. Danke!
Ich habe hierzu nix gefunden. Hat jemand die Lösung dazu?
Sicher! Diese Frage wurde übrigens schon zwei weitere Male gestellt, daher hab ich einfachshalber einfach meine Antwort noch einmal kopiert: "Eine View wird zwar zur externen Schicht gezählt, sie setzt sich jedoch aus Elementen der konzeptuellen Schicht (Tabellen / Relationen) zusammen. Anders herum ist die konzeptuelle Schicht gleichzeitig die Summe aller Views und Daten. Insofern ist es da schwierig die beiden Objekte klar abzutrennen. Denn die View besteht aus Elementen der konzeptuellen Schicht. Und die konzeptuelle Schicht besteht unter anderem aus Views, eine View ist nämlich eine Teilmenge der konzeptuellen Schicht, die somit gleichzeitig ein Element der externen Schicht bildet. Daher sollte man zum externen Schema bestenfalls Views UND Subschemas nennen! Ich hoffe, das war verständlich, ansonsten kannst du gerne weiter nachfragen :D"
Hallo leute kannmir einer sagen ob das korrekt ist das ist die 4 Probeklausur Preclaiming Danke im voraus!
ich glaub du hast einen fehler in der sechsten zeile da ja Transaktion 2 auf auch X zugreifen möchte R2(x) ist ja in der warteliste muss R2(y) auch auf die warteliste . Wenn eine Transaktion startet wird ja zu beginn alles benötigte gelocked
Kann mir jemand bitte diese Abfrage erklären ?
View 5 more comments
Müsste where nicht vor group by? Oder ist das beim Trigger anders?
Ne, dürfte beim Trigger nicht anders sein. Where vor Group by :D
Ich bin demjenigen der mir die Lösung zu dieser kleinen Teilaufgabe schickt, zu ewigem Dank verpflichtet :D Wäre jemand eventuell so freundlich :)?
View 3 more comments
Danke :D
Wie würde die Tabelle aussehen ? Und woran erkenne ich das fortgepflanzte rollback ?
W2(y) kann nicht aus der Warteliste. Demzufolge kommt W2(z) und W3(z) auch in die Warteliste und wir haben einen Deadlock. Alles andere ist aber richtig.
View 11 more comments
Ja aber ich hab doch in der Zeile Z als erstes eine S3 sperre, danach folgt erst die S2 sperre. Verstehst du was ich meine ? Bin etwas verwirrt
Du kannst eine x3 sperre auf eine s3 sperre setzen aber eine x3 sperre auf S2 geht nicht.
Wäre das so richtig ?
View 4 more comments
@Anonymer Würfel stimmt hab mich verschrieben :o könnte man nicht , in dem Fall doch mit R2(y) weiter machen ?
ich hätte diese Lösung..
Warum ist hier ein Blitz? Wieso kann man nicht schon da eine Lesesperre auf R2(z) setzen?
View 3 more comments
ja, und wegen r2y
okay hab es verstanden, dankeschön
Glaubt ihr auch, dass morgen Scheduling mit Preclaiming dran kommen wird? Irgendwie habe ich den Eindruck, dass pro Jahr immer beides einmal drankommt.
View 5 more comments
https://www.youtube.com/watch?v=Gn5IqtxuQFQ&list=PLoOmvuyo5UAe6Jlz20xcKTM6Y-v_ZNHkw&index=58 Das Video hat mir eigentlich ganz gut weitergeholfen, hatte am Anfang auch nichts verstanden. Würde dann noch das Skript durch gehen und Übung 11 bearbeiten bzw. dann immer mit der Lösung durchgehen
Da wär ich gar nicht mal so sicher. Das strikte 2Pl in der Klausur war sehr tricky und jeder dachte es gibt einen Deadlock, aber erst am Ende ging alles durch. Kann also möglich sein, dass ihr im NT dann tatsächlich einen Deadlock habt
Viel Glück an alle, die morgen die DBMS-Klausur schreiben. 🍀🍀🍀
Kann jemand diese Ergebnisse erläutern?
2NF: Alle Nicht-Prime Attribute müssen vom ganzen Schlüssel voll funktional abhängig sein. In Aufgabe a) wurde bereits geklärt, dass der einzig logische Schlüssel {A, B, C, F, G} sein muss. 1. ist von {A, B, C} abhängig. Leider ist dies nicht der ganze Schlüssel, sondern nur eine Teilmenge des Schlüssels, also wird die 2NF verletzt. 2. {F, G}, genau dasselbe. 5. {B, C} ist ebenfalls eine Teilmenge des Schlüssels. Also widersprechen 1., 2. und 5. der 2. Normalform. 3NF: Nicht-Prime-Attribute dürfen nicht transitiv von Schlüsselkandidaten abhängig sein. 3. ist von I abhängig. I ist allerdings nicht Teil des Schlüssels, sondern vom Schlüssel(kandidaten) abhängig. Diese Transitivität verletzt die 3. Normalform. Stattdessen sollte I -> J in eine seperate Tabelle verlagert werden. 4. Dasselbe Spielchen mit J. Damit widersprechen 3. und 4. der 3. Normalform. (Plus 1., 2. und 5., welche man aber in der Aufgabe nicht nochmals nennen soll.)
select distinct characterid,firstname,lastname from character where characterid not in (select characterid from appliedspell natural join spell natural join spellcharacteristic natural join characteristic where cname='Offensive' where characterid is not null) hey leute eine frage warum gibt der wenn man das where characteris is not null weg macht keine Tupel aus ? laut vorlesungsfolien wird null doch überspringen bei in ???
View 6 more comments
allerdings muss ich anmerken, dass nullmarken auch bei not in nicht ausgegeben werden. es wird lediglich eine leere ergebnisrelation ausgegeben, daher bedanke ich mich für deine mühe , kann mit deiner antwort aber nichts anfangen
Okay, das tut mir leid. Ich hab meine ursprüngliche Antwort nochmals angepasst, bevor irgendjemand beim Durchscrollen dann was Falsches aufschnappt.