Guten Tag,
mir sind im Moment nicht die Mischbarkeit bzw. die Grenzen von SQL und XML bekannt. Wir setzen Komponenten ein (DevExpress), die eine Bindung zu Datenbanktabellen erfordern. Diese Tabellen sind von der Struktur her vorgegeben. Ein kleines Beispiel:
Termintabelle:
Start - datetime (Start des Termins)
End - datetime (Ende des Termins)
Subject - nvarchar (Betreff des Termins)
ResourceID - ntext (Mitarbeiter die an dem Ereignis teilnehmen)
Das Feld ResourceID enthält nicht, wie anzunehmen den Verweis auf einen dazugehörigen Datensatz, sondern den Verweis auf mehrere Datensätze in Form eines XML Strings. Der XML String ist Typisiert und enthält die Auflistung der MitarbeiterIDs aus der Mitarbeiter Tabelle.
Nun die Frage:
Ist es im SQL Server 2005 möglich, mit nur einem SELECT Statement einen Datensatz aus der Termintabelle zu ziehen, der über einen JOIN auf eine XML Tabelle verbunden ist, die sich aber in einem Attribut (ResourceID) aus dem zuziehenden Datensatz befindet? Also das der Datensatz auf sich selbst referenziert, jedoch nicht auf den ganzen Datensatz, sondern auf eine Tabelle aus einem Feld im Datensatz. Ohne eine SP oder UDF zu benutzen?
Ich wäre dankbar für ein einfaches Beispiel oder Links zu diesem oder einem ähnlich Thema.
Gruß Raimund
mir sind im Moment nicht die Mischbarkeit bzw. die Grenzen von SQL und XML bekannt. Wir setzen Komponenten ein (DevExpress), die eine Bindung zu Datenbanktabellen erfordern. Diese Tabellen sind von der Struktur her vorgegeben. Ein kleines Beispiel:
Termintabelle:
Start - datetime (Start des Termins)
End - datetime (Ende des Termins)
Subject - nvarchar (Betreff des Termins)
ResourceID - ntext (Mitarbeiter die an dem Ereignis teilnehmen)
Das Feld ResourceID enthält nicht, wie anzunehmen den Verweis auf einen dazugehörigen Datensatz, sondern den Verweis auf mehrere Datensätze in Form eines XML Strings. Der XML String ist Typisiert und enthält die Auflistung der MitarbeiterIDs aus der Mitarbeiter Tabelle.
Nun die Frage:
Ist es im SQL Server 2005 möglich, mit nur einem SELECT Statement einen Datensatz aus der Termintabelle zu ziehen, der über einen JOIN auf eine XML Tabelle verbunden ist, die sich aber in einem Attribut (ResourceID) aus dem zuziehenden Datensatz befindet? Also das der Datensatz auf sich selbst referenziert, jedoch nicht auf den ganzen Datensatz, sondern auf eine Tabelle aus einem Feld im Datensatz. Ohne eine SP oder UDF zu benutzen?
Ich wäre dankbar für ein einfaches Beispiel oder Links zu diesem oder einem ähnlich Thema.
Gruß Raimund
Comment