Ich verstehe nicht, wie man hier die Dauer (Lehrer unterrichtet mehr als 10 Jahre) rausfiltert. Kann mir das jemand bitte erklären?
Also bei dieser Aufgabe habe ich zuerst ein cross join versucht und das hat nicht geklappt, aber ich bin mir bei der Begründung nicht sicher.. Liegt es daran, dass es zwei gleiche Attribute gibt und die gleichen, die die Bedingung erfüllen, nur aufgelistet werden sollen unnd das wäre beim Cross Join gar nicht der Fall, weil da ja einfach alles mit allem verbunden wird, richtig..?
Ein CROSS JOIN kombiniert alles mit allem. Hier willst du aber nur die Elemente miteinander kombinieren, die die gleiche spellid haben (da beide Relationen spellID enthalten, kann NATURAL JOIN das automatisch). Versuch mal, den Ausdruck mit JOIN ON zu formulieren, vielleicht wird das dann klarer.
Warum ändert sich die Tabelle, wenn ich distinct hinzufüge? Ich dachte distinct ist dafür da, dass es keine Duplikate gibt?
Zuallererst: bei DBMS sind die Reihenfolgen nicht immer gleich. Die Tabellen sind also nur scheinbar unterschiedlich. In Wirklichkeit ist es 2x das gleiche Ergebnis, nur anders sortiert. Wenn du eine Abfrage mehr durchführst, kann es auch sein, dass du unterschiedliche Ergebnisse bekommst. Der Übungsserver zeigt mWn nur die ersten 20 Ergebnisse an. Zweitens: DISTINCT ist vor allem dann wichtig, wenn man JOINs durchführt, da dann bei den Zwischenergebnissen durch das karthesische Produkt Duplikate erzeugt werden. Bei einfachen SELECT-WHERE-Statements benötigt man meist kein DISTINCT, da die Haupttabelle ja auch keine Duplikate enthält.
Ich verstehe hier irgendwie nicht auf welche Tabellen ich die Attribute nehmen soll.. Da steht nur spellname.. Kann mir das bitte jemand erklären?
select distinct spellname from spell die von spell.(Kannst du auch vom Schema ablesen)
Ohh hab das Schema gar nicht bemerkt.. danke! :D
Leute wie schwer ist die DBMS-Klausur? Zudem: reicht es wenn man die SQL Sachen vom Übungsserver kann oder sind Tabellen und die Aufgaben der Übungsblätter auch so wichtig?
Kann man dieses Modul auch ohne jegliche Programmierkenntnisse machen?
View 1 more comment
Du brauchst keine Programmierkenntnisse. Du bekommst alles erklärt was Du brauchst. Wenn Du SQL Befehle suchst, dann ist diese Seite ganz hilfreich: https://www.w3schools.com/sql/ Auf der linken Seite hast Du ein Verzeichnis. Klick Dich durch und Du bekommst gute Beispiele mit denen Du meistens wieder weiter kommst!
Vielen Dank Leute!!!
Hallo, gibt es schon einen Klausurtermin?
View 3 more comments
wo steht das eigentlich offiziell? also finde das nirgendswo mit dem klausurtermin, ist der 100% sicher ?
bei HISinOne. ob es sicher ist kann dir wahrscheinlich keiner sagen lol
Was genau ist dieses kaskadieren bzw. kaskadierendes Löschen?
View 4 more comments
Dort wo die Fremdschlüssel stehen bzw. referenziert wird fügst du ON DELETE CASCADE hinzu. Dafür machst Du einfach den hier:
Super Beispiel! Danke nochmal! :D
SQL- Übungsblatt 6 — Aufgabe 1 Kommt das so hin mit den Schlüsseln? CREATE TABLE person( personid INTEGER, vorname VARCHAR, nachname VARCHAR, CONSTRAINT PK_person PRIMARY KEY (personid) ); CREATE TABLE student( personid INTEGER, matrno INTEGER, fachbereich VARCHAR, studienfach VARCHAR, semester INTEGER, fachsemester INTEGER, CONSTRAINT FK_student FOREIGN KEY (personid) REFERENCES person(personid) ); CREATE TABLE Lehrveranstaltung ( lv_nr INTEGER, bezeichnung VARCHAR, raum VARCHAR, gehalten_seit DATE, status VARCHAR, CONSTRAINT PK_lehrveranstaltung PRIMARY KEY (lv_nr) ); CREATE TABLE leistung( matrno VARCHAR , lv_nr INTEGER REFERENCES lehrveranstaltung , note INTEGER, datum DATE, CONSTRAINT pk_leistung PRIMARY KEY (matrno, lv_nr ) ); CREATE TABLE semesterbeitrag ( matrno INTEGER, datum DATE, geforderterbetrag VARCHAR ); CREATE TABLE zahlung ( matrno INTEGER, datum DATE, betrag REAL );
1. Die Tabelle Student hat keinen Primary Key 2. Student(matrNo) sollte Unique sein 3. Es fehlt ein Foreign Key von Leistung(matrNo) zu Student(matrNo) 4. Wieso ist geforderterBetrag VARCHAR aber betrag REAL? So wird es umständlich diese zu vergleichen
Danke Dir! So sollte es passen. CREATE TABLE person( personid INTEGER, vorname VARCHAR, nachname VARCHAR, CONSTRAINT PK_person PRIMARY KEY (personid) ); CREATE TABLE student( personid INTEGER, matrno INTEGER, fachbereich VARCHAR, studienfach VARCHAR, semester INTEGER, fachsemester INTEGER, CONSTRAINT PK_student PRIMARY KEY (matrno), CONSTRAINT FK_student FOREIGN KEY (personid) REFERENCES person(personid) ); CREATE TABLE lehrveranstaltung ( lv_nr INTEGER, bezeichnung VARCHAR, raum VARCHAR, gehalten_seit DATE, status VARCHAR, CONSTRAINT PK_lehrveranstaltung PRIMARY KEY (lv_nr) ); CREATE TABLE leistung( matrno INTEGER REFERENCES student , lv_nr INTEGER REFERENCES lehrveranstaltung , note INTEGER, datum DATE, CONSTRAINT PK_leistung PRIMARY KEY (matrno, lv_nr ) ); CREATE TABLE semesterbeitrag ( matrno INTEGER, datum DATE, geforderterbetrag REAL ); CREATE TABLE zahlung ( matrno INTEGER REFERENCES student, datum DATE, betrag REAL );
Hallo Leute, vielleicht kann mir ja jemand weiterhelfen, ich bin im VPN der Uni aber der Übungsserver lässt sich trotzdem nicht öffnen. Gibts da noch weiteres zu beachten? Als Meldung bekomme ich auf dem Mac, dass der Server nicht antwortet..
Stell sicher, dass der Browser den du verwendest auch die VPN-Netzwerkschnittstelle benutzt, scheint so als würde er das nicht tun. Evtl. versuchen den Browser erst zu starten nachdem der VPN läuft oder anderen Browser versuchen.
DBMS Klausur Montag, 03.08.2020 von 11:00 bis 14:00
kann jemand mir zeigen, warum hier Fehler gibt?
Komma nach Primary Key fehlt, Komma nach on delete fehlt und ein Komma zuviel nach matrNo
Nimm am besten anstelle von phpMyAdmin und MySQL (?) eine Postgres Datenbank und pgAdmin. Das zeigt Syntaxfehler an.
Moin Leute gibt es irgendwelche Bonuspunktaufgaben oder Übungen/Tests die man zur Klausurzulassung bearbeiten muss?
Nein. Für DBMS gibt es weder Bonuspunkte noch eine gesonderte Klausurzulassung.
ist postgesql wichtiger oder der Übungsserver?
übungsserver. Die Klausur wird wahrscheinlich ein ähnliches Harry Potter schema haben. (Siehe VT19 Klausur hier)
Wozu benötigt man postgreSQL und wie downloaded man das Programm auf MAC?
View 4 more comments
Also reicht der Übungsserver jetzt?
übungsserver reicht vollkommen.
Aus Erfahrung kann ich Euch bezüglich der Theorie folgendes sagen. Lernt alle Theorieaufgaben von allen Probeklausuren und Altklausuren und lernt dieses Dokument: ReuploadTheorieKlausurrelevant. Ihr braucht sonst nichts weiter auswendiglernen, auch nicht das Script. Es ist fast schon so, dass der Prof sich aus einem Pool von immer wiederkehrenden Theoriefragen, abwechselnd die gleichen dran nimmt.
View 3 more comments
PS: Stefan ist kein Prof, sondern "einfacher" Dozent. :D
Stefan ist Cool
No area was marked for this question
Jetzt hör doch auf mit dem Upload dieser nutzlosen und schwachsinnigen Dokumenten. Keiner lädt die runter und keiner braucht die. Es gibt sehr gute Dokumente die wegen deinem Blödsinn untertauchen
leben und leben lassen bro downloade doch einfach die wichtigen dokumente lol
Sooo, meine lieben Freunde :-) Ich habe mal meine Zusammenfassungen des letzten Semesters hochgeladen. Die Inhalte sind im Wesentlichen gleich geblieben, daran kann man sich also gut orientieren. Zu SQL gibt's auch wie gewohnt viele Beispiele und weitere zusätzliche Erklärungen/Kommentare, die so nicht im Skript stehen, sondern damals nur mündlich gesagt worden sind. Viel Freude! (bevor Nachfragen aufkommen: Nach dem SQL-Teil hab ich nichts mehr. Vielleicht schreibe ich dieses Semester weiter, aber eher so 50/50)
Danke ,du bist der beste :)
Versteht ihr die SQL-Abfragen aus den neuesten Vorlesungen oder gehts nur mir so, dass es irgendwie auf einmal sehr viel Stoff auf einmal ist Ich meine lesen kann ich die Abfragen schon und verstehen auch, aber so selber hinschreiben aus dem Kopf könnte ich das niemals :(
Es hilft auf alle Fälle sich mal anzuschauen, welche Attribute in der Ausgabe überhaupt gefordert sind. Wenn es bspw eine Person mit zB Spalte "persID" und eine Mitarbeiter Tabelle gibt mit zB Spalte "Gehalt": ist dann in der Aufgabe nach einer persID und einem Gehalt gefragt, ist es logisch, dass du die beiden Tabellen miteinander verknüpfen musst. Außerdem kann es helfen, die Abfragen umgekehrt zu betrachten. ("was erhalte ich wenn ich diese zwei Tabellen mit einem NATURAL JOIN verknüpfe? Was erhalte ich wenn ich die mit einem LEFT OUTER JOIN verknüpfe?) - wenn man mal ein paar Fälle durchgeht, kommt man dann meist drauf, was genau zu tun ist.
In erster Linie solltest Du alle Join Arten verstehen. Lies dich durch Erklärungen durch und Du wirst merken, es gibt zich wege, Abfragen zu erstellen. Vor Allem in den Übungen gibts einige Abfragen die lächerlich lang sind. Aber prinzipiell kannst Du dich darauf verlassen, dass Ihr in der Klausur keine langen Abfragen bekommen werdet. Die längste Aufgabe bezüglich SQL ist Trigger mit 6-8 Punkten bewertet. Die ist aber zum großteil nur auswendig lernen. Schau Dir dazu am besten mein Dokument hier an.
Wieso muss in die where Bedingung is null?
Hab DBMS zwar letztes Jahr geschrieben, aber meine das war Null, weil Leiter keinem house zugeordnet waren oder so was in der Art. Bzw. Housename ist keinem Leiter zugeordnet.
kann jemand mir erklären, warum das Ergebinis von R1 und R2 gleich r2 ist?