Hallo leute,
Hallo kann mir bitt jemand sagen ,wie ich Objekte nach ihre referenzen fragen kann.
ich wollte nach unrefernzierte Objekte in der datenbank suchen.
welche möglichkeiten gibt nach diese Objekte zusuchen?
welche vorteil und nachteil haben diese methoden?
vielleicht kommen noch andere Fragen:)
wenn du eine Tabelle mit einem Objekt hast das zb das Attribut Name hat dann kannst du so abfragen
[sql]SELECT * FROM table WHERE objekt.Name = ‘abc’;[/sql]
hallo,
das kenne ich schon.ich wollte aber wenn ich nach einem Objekt suche,prüfen ob ein anderes Objekt auf ihm verweist!
etwas muss schon geben oder ?
weil ich kann kein Objekt einfach löschen wenn anderes auf ihm verweist.
nein das geht nicht, weil die Objekte in der Datenbank sind entkoppelt von den Objekten wie du sie hast.
Denn sobald die Objekte in der Datenbank sind sind sie ja nicht mehr in deinem Speicherbereich bzw. sogar auf einem anderen Rechner.
Daher kannst du Objekte ruhig löschen um die in der DB musst du dir keine Gedanken machen die sind entkoppelt.
hallo EagleEye,
Vielen Dank für die schnelle antworten:).
ich finde es super bei euch im forum.nur ich muss dich noch mit meiner Fragen stressen.
du hast gemeint dass ich um die Objekte in der datenbank nicht kümmern muss.ich muss für meine Projekt diese Objekte in der Datenbank suchen also die Objekte , die allein in der Datenbank allein(weisen ) sind.
von deine letzte Antwort verstehe ich dass diese objekte können in OODB nicht existeren da die Datenbank sowas nicht zulässt oder??
zum Fragen sind wir ja da
Ich versteh deine Frage gerade nicht.
Das du dich um die Objekte der Datenbank nicht kümmern musst ist so gemeint.
Du hast Objekt A das speicherst du in der DB und willst es nach einiger Zeit löschen/freigeben. Du musst keine Angst haben das sich das Objekt in der Datenbank auflöst oder irgendwie kaputt geht, wenn du das Objekt in deinem Programm löschst. Weil die Objekte der DB und in deinem Programm haben keine physische Verbindung, das in der DB ist eine Kopie deiner Daten.
Aber andersherum, löschst du ein Objekt bei dir und willst das es auch in der DB verschwindet musst du das der DB explizit sagen.
Wichtig, all diese Aussagen treffen auf den klassischen DB Zugriff zu, wenn du irgendwelche Wrapper wie zb Hibernate benutzt kann sich das ändern, wobei das immer vom System dann abhängt.
nur ich verstehe das noch nicht genau.In der Objekt orientierte datenanken gibt es keine tabellen oder?
es sind doch nur objekte,die werden in der datenbank gespeichert .und jedes objekt hat seine eigene ID.
also wenn ich die eigentschaft eines Objekt abfrage,kann ich doch nicht wissen dass das Objekt verweise von aussen hat.oder?
spricht ein Objekt weiss auf wem er verweist aber nicht wer auf ihm verweist.
bitte korriegert mich wenn ich was falsches verstehe.ich bin neuling in diesem Berich.
es wäre schön wenn du mir das mit einbißen code erklärt.
vielen dank
Welche Datenbank verwendest du?
Ich kann dir jetzt nur sagen wie es bei Oracle und Postgres ist, das sind objektrelationale Datenbanken, d.h. du hast normale Tabellen in die kannst du Objekte packen bzw. du erzeugst aus Objekten Tabellen.
Jedes Objekt ist in den Fällen einfach nur eine Spalte in der Tabelle (oder eine Zeile)
Wie es bei komplett OO DBs aussieht kann ich dir nicht genau sagen, weil ich hab mit keiner bisher gearbeitet, aber auch da muss es so etwas wie Tabellen geben. Denn irgendwie musst du deine Objekte ja einordnen, die Objekte einfach nur in einen Sack schmeißen bringt ja nichts.