Ich bin neu in SQL. Ich schaue auf die Erstellung einer Datenbank, wo ein Wert in einer Tabelle ist ein Zeiger auf eine andere 'ganze' Tabelle (nicht nur ein Wert in der anderen Tabelle ... aber die Tabelle selbst). Wie kann man das erreichen und wie kann man eine SQL-Anweisung schreiben, um auf Daten in der Kindtabelle zuzugreifen? Ich werde mit den folgenden Tabellen illustrierenUntergeordnete Tabellen definieren und Datensätze von ihnen abrufen
Projekt:
ID Name Site Client Progress
------------------------------------------------------
1 Bronx 99-Beans Street Mr.Smith **1
2 Mandy 4-Apt Clinton Mrs. Cross **2
3 Ani 7-Magbo,Jos, NG FRN, 9ja **3
Bronx:
Task Description Start Finished Handler
-------------------------------------------------------------
1 Remove Top-Soil 07:50:33 12:10:05 Jack
2 Break Ground 13:00:20 15:33:52 Grader
3 Spray Fertilizer 15:55:30 17:15:23 Suzie
Beachten Sie, dass die zweite Tabelle hat seinen Namen von dem Name Wert von Project @ id = 1. Die ID könnte immer noch diesen Zweck erfüllen, in diesem Fall würde die Tabelle '1' ... heißen, was ziemlich seltsam ist, aber zumindest erklärt dies die Art der Beziehung, die die Tabellen haben sollten. Löschen eines Datensatzes in der 'Projekt' Tabelle sollte auch die zugehörige Progress-Tabelle (mit dem Namen des Datensatzes) * löschen. Wie kann man & Abfragetabellen mit dieser Beziehung in SQL erstellen?
Warum genau brauchen Sie eine neue Tabelle für jede Zeile in "Projekte"? Dies ist zwar möglich, aber es ist nicht so, wie relationale Datenbanken verwendet werden sollten. Vielleicht sollten Sie einen Schlüssel-> Wert oder eine Objektdatenbank verwenden? – pablochan
Schlechter Entwurf .... – PurplePilot
@pablochan: Könnten Sie mehr Licht auf Schlüsselwert- oder Objektdatenbanken werfen? – twohot