Attribut ersetzen?



  • Hey Leute!

    Ich hab hier eine (Übungs-)Oracle-Datenbank vor mir. In dieser Datenbank gibt es eine Relation (nennt man ja auch Relation) die siche "Auftrag" nennt. In dieser "Auftragstabelle" gibts zwei Spalten die "Persnr" und "Kundnr" heißen.

    Nun meine Aufgabenstellung:
    Ich soll nun die Attribute "Persnr" und "Kundnr" durch die benutzerfreundlicheren Attribute Persname und Kundname ersetzen.

    Ich verstehe aber nun nicht, was genau ich da machen soll. Soll ich das Spaltenattribut ändern, oder soll ich was anderes machen?

    Noch eine Frage: Ist Attribut ein Synonym für den "Spaltennamen"? Ich kann mit Attribut ehrlich gesagt nicht so viel anfangen!

    Könnt ihr mir helfen?



  • Muss man hier dann etwa mit dem Befehl "alter table change "altern Spaltenname" "neuer Spaltenname" "neuer Datentyp"" den Spaltennamen ändern?

    Sähe dann quasi so aus:

    alter table Auftrag change "Persnr" "Persname"
    

    Geht aber anscheinend so nicht.

    Was ich auch noch nicht verstanden habe, ist welche unterschiedlichen Datentypen es gibt und wenn man nur das Attribut einer Spalte, also den Spaltennamen verändert, ob man dann auch den Datentypen neuangeben muss auch wenn dieser gleichbleibt.



  • Ich hab die Aufgabe mittlerweile selbst gelöst 🙂



  • Hm, ich glaub die Aufgabe wie ich sie mache hat doch nicht gepasst. Ich hab nun das hier angesetzt:

    select Kundnr from Auftrag inner join Personal on Auftrag.Persnr = personal.name;
    

    Funktioniert aber auch nicht. Kann mir jemand helfen?



  • So jetzt hab ich das soweit wie ich das will, aber momentan noch einzeln. Jetzt würde ich gern die zwei einzelnen "inner joins" in einen einzigen großen Ausdruck zusammenbaun. Wie geht das? Hab dazu leider nirgends was gefunden...

    select Name from Auftrag inner join Personal on Auftrag.Persnr = Personal.Persnr;
    select Name from Auftrag inner join Kunde on Auftrag.Kundnr = Kunde.Nr;
    

    Ich hab's dann trotzdem mal probiert, aber so funktioniert trotzdem nicht:

    select Name from Auftrag inner join (Auftrag inner join Kunde on Auftrag.Kundnr = Kunde.Nr) Personal on Auftrag.Persnr = Personal.Persnr;
    


  • "Funktioniert nicht" ist keine ausreichende Fehlerbeschreibung



  • Er sagt: "missing keyword"


Anmelden zum Antworten