SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Im SQL Managementstudio Daten Abfragen

Unbeantwortet Dieser Beitrag hat 9 Antworten

Ohne Rang
62 Beiträge
Henk Fischer erstellt 10 Nov. 2015 13:41
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo,

ich bin auf der Suche nach einer Lösung SharePoint Listendaten von Benutzerdefinierten Listen im SQL Managementstudio auszulesen.

Irgendwie stehe ich auf dem Schlauch. Ich finde die Tabelle nicht in der die Inhalte abgespeichert werden.

Kann mir jemand sagen wo ich diese finde?

Beste Grüße

Henk

Alle Antworten

Ohne Rang
634 Beiträge
Olaf Didszun Als Antwort am 10 Nov. 2015 14:29
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hi Henk,

ich weiß nicht, was du vor hast, aber aus meiner Erfahrung kann ich dir sagen, lass die Finger davon. Microsoft unterstützt keine Umgebungen, in denen von außen auf die Inhaltsdatenbanken zugegriffen wird. Mit einem einfachen Select gegen eine der Tabellen kannst du Sperren im SQL Server verursachen, die den Betrieb beeinträchtigen.

Wenn du trotzdem da ran willst, z.B. weil du auf einer Kopie der Inhaltsdatenbank arbeitest ( ;-) ), dann findest du die Metadaten in der Tabelle dbo.AllUserData, die Dokumente in dbo.AllDocs und dbo.AllDocStreams. Das gesamte Datenbankschema ist echt pfiffig, aber nicht wirklich leicht zu verstehen (und auch nicht dokumentiert).

Beste Grüße

Olaf

Ohne Rang
62 Beiträge
Henk Fischer Als Antwort am 10 Nov. 2015 15:04
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hi Olaf, besten Dank.

 

Ich habe z.B. eine Liste mit dem Namen Musterliste und eine Spalte mit dem Namen "Musterspalte 1"

verstehe ich es richtig, dass ich diese Spalte in der dbo.AllUserData unter Spalten wiederfinde? Und die Inhalte der Spalte? Muster Eintrag 1 und 2?

Beste Grüße

Henk

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 10 Nov. 2015 15:45
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Alle Daten aller Listen werden in einer einzigen Datenbanktabelle gespeichert. Diese Tabelle hat dazu die Maximalzahl an Spalten. Das sind dann so ungefähr 25 bit-Spalten, 40 int-Spalten, 30 datetime-Spalten usw. (Zahlen natürlich nicht abgezählt). Wenn Du jetzt eine Spalte für eine Liste anlegst, wird die auf eine freie Spalte gemappt, also z.B. die erste Ja/Nein-Spalte auf die Spalte bit1. Die genaue Zuordnung mußt Du entweder über Beispieldaten finden oder über das Objektmodell und dort das Fieldschema auslesen.

Und Achtung: man kann in SharePoint mehr Spalten eines Typs anlegen als in der Datenbank vorgesehen sind. In der Datenbank gibt das dann eine zweite Zeile, die aber mit der ersten verknüpft ist. Diesen Zeilenumbruch kann es (glaube ich) bis zu vier Mal geben.

Also um es kurz zu machen, schließe ich mich Olaf an: lass die Finger davon und benutze die vorgesehenen Wege.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
62 Beiträge
Henk Fischer Als Antwort am 10 Nov. 2015 15:50
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut
Hallo Andi, vielen dank für diesen wirklich guten Post. Was wäre z.B. eine andere "korrekte" alternative. Ein Stichwort reicht.
Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 10 Nov. 2015 15:54
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Es gibt jede Menge und ich weiß nicht, was für Dich am besten paßt.

Es gibt das serverseitige Objektmodell, mit dem man praktisch alles und mit praktisch beliebig hohen Berechtigungen machen kann. Funktioniert aber nur direkt auf dem Server.

Es gibt das clientseitige Objektmodell, mit dem man auch remote arbeiten kann. Es ist etwas eingeschränkt, reicht aber sehr oft aus. Das gibt es in C# und JavaScript (und Silverlight, aber das ist tot).

Und es gibt die REST-Services, mit denen man ebenfalls fast alles machen kann. Die Clientobjekte benutzen das unter der Haube auch.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
634 Beiträge
Olaf Didszun Als Antwort am 10 Nov. 2015 16:04
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Und noch als kleine Ergänzung: wenn man Auswertungen machen will, dann können die SQL Server Reporting Services auch direkt auf SharePoint Listen/Bibliotheken zugreifen. Die arbeiten dann mit den von Andi schon beschriebenen Techniken.

Grüße

Olaf

Ohne Rang
391 Beiträge
Frank Daske Als Antwort am 10 Nov. 2015 17:28
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Eine andere Möglichkeit ist es, mit Tools SharePoint Listen mit SQL Server Tabellen zu synchronisieren (in eine Richtung, oder auch in beide).

Die Vorgehensweise wird hier gezeigt:
https://www.youtube.com/watch?v=z2wpSGm_raQ

Im Beispiel ist es Office 365, geht für SharePoint natürlich auch.

Beste Grüße, Frank

 

Ohne Rang
634 Beiträge
Olaf Didszun Als Antwort am 10 Nov. 2015 15:51
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hi Henk,

darf man wissen, was du vorhast? Ich kann mir vorstellen, dass es einen besseren Weg gibt.

Beste Grüße

Olaf 

Ohne Rang
62 Beiträge
Henk Fischer Als Antwort am 10 Nov. 2015 15:12
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut
Entschuldige, meine genaue Frage lautet: wo finde ich die von mir benutzerdefinierten Spalten und dessen Inhalte?