Mehr

So richten Sie ein ArcMap Relate mit einer Tabelle von MS SQL Server 2012 ein

So richten Sie ein ArcMap Relate mit einer Tabelle von MS SQL Server 2012 ein


Dies ist das erste Mal, dass ich mit Daten direkt aus MS SQL Server 2012 arbeite, und ich bin mir nicht sicher, ob ich sie in einem Relate in ArcMap verwenden kann.

Ich habe eine Tabelle in MS SQL Server, die ich über die Option Datenbankverbindungen in ArcMap gebracht habe. Wenn ich diese Tabelle mit der Standardschaltfläche Daten hinzufügen zu ArcMap hinzufüge, wird das Dialogfeld Neuer Abfrage-Layer angezeigt:

ArcMap erfordert ein eindeutiges Bezeichnerfeld, diese Tabelle verfügt jedoch nicht über eines. Ich habe eines der vorhandenen Felder ausgewählt, obwohl es nicht eindeutig ist (das erste Problem?).

Ich kann die Tabelle jetzt in ArcMap anzeigen und eine Beziehung zwischen dieser Tabelle und einer Feature-Class basierend auf dem übereinstimmenden BoreholeID-Feld einrichten.

Wenn ich jedoch ein Bohrloch aus der Feature-Class oder eine Zeile in der Tabelle auswähle, wird die Beziehung angezeigt, aber ausgegraut:

  • Kann ich eine Tabelle aus dem MS SQL Server Management Studio in einem ArcMap beziehen?
  • Wenn ja, ist die Ursache des Problems das Fehlen eines eindeutigen ID-Felds?
  • Wenn nicht, was könnte das Problem sonst noch verursachen?

ArcGIS verwendet häufig "registrierte Zeilen-Spalten". Diese sind

  • INTEGER (32-Bit) Spalten mit
  • positive Werte ungleich Null (1 - 2^31-1),
  • die als NOT NULL definiert sind,
  • enthalten eindeutige Werte, und
  • sind bei Folgeabfragen reproduzierbar

ArcGIS verwendet diese Spalten, um die Beziehung zwischen Zeilen in Tabellen und den Grafiken in der Karte beizubehalten. Immer wenn Sie eine Tabelle bei einer Enterprise-Geodatabase registrieren, erstellt ArcGIS eine SDE-gesetzte Rowid-Spalte, falls noch keine verfügbar ist.

Abfrageebenen sind nicht Sie müssen bei der Geodatabase registriert sein, sie müssen jedoch eine Rowid-Spalte mit denselben Merkmalen aufweisen. Viele Leute versuchen, die Regeln zu betrügen, indem sie eine berechnete Zeilennummer-Spalte anstelle einer Zeilen-ID verwenden, aber dies erzeugt nur das, was die Dokumentation als "inkonsistentes Verhalten" bezeichnet, wenn sie versuchen, räumliche Objekte Tabellenzeilen zuzuordnen (und umgekehrt, wie bei einer Identitätsoperation).

Sie müssen dieser Tabelle eine Rowid-Spalte hinzufügen, um sie in einem Abfrage-Layer zu verwenden.


Lassen Sie uns zunächst ein paar Dinge klären. Wenn Sie sagen, dass Sie eine Tabelle hinzufügen möchten vonMS SQL Server Management Studio 2012, was Sie wirklich tun möchten, ist eine Tabelle hinzuzufügen ausMS SQL-Server. Das Management Studio ist einfach die Benutzeroberfläche für die Interaktion mit der Datenbank selbst.

Zweitens gehe ich davon aus, dass ArcSDE in diese SQL Server-Datenbank nicht geladen ist. Wenn dies der Fall ist, sollte das Laden einer Tabelle so einfach sein wie das Hinzufügen einer Standardtabelle und wäre kein Abfrage-Layer.

ArcGIS ist ziemlich wählerisch, wenn es um den Umgang mit Datenbanken außerhalb der SDE-Umgebung geht. Sie müssen sicherstellen, dass Sie die aktualisierten Treiber für den MS SQL Server verwenden. Sie tun wahrscheinlich so, wie Sie die Tabelle hinzufügen können. Wenn Sie die Daten als Tabelle in ArcGIS abrufen können, sollten Sie sie als Teil eines Joins oder einer Beziehung verwenden können, unabhängig davon, in welcher Datenbank sie gespeichert sind.

Wie Sie vermutet haben, ist eine eindeutige ID oder das Fehlen einer eindeutigen ID das Auflegen. Wie Sie wissen, ist mit jeder eigenständigen Tabelle, die über die ArcGIS-Umgebung erstellt wird,Objekt Identifikationgeschaffen. Dies ist eine eindeutige ID, mit der ArcGIS jede einzelne Zeile identifizieren kann. Wenn Sie einen Layer aus einer Datenbank außerhalb der ArcGIS-Umgebung importieren, müssen Sie das Feld angeben, das anstelle desObjekt Identifikation. Wenn Sie ein solches Feld nicht angeben, können Sie zwar eine Tabelle hinzufügen, aber keine Optionen ausführen, die eine Indizierung der Zeilen erfordern. Dies umfasst jede Art von Joins oder Relates und andere räumliche Operationen.

Im Bild unten lade ich in eine Tabelle. Das erste aufgeführte Attribut istgid. Wie Sie sehen können, zeigt es, dass es so istNicht nullbar. Das ist ein zweites Kriterium, das wichtig, aber von vornherein nicht erforderlich ist. Ein Fehler wird ausgegeben, wenn NULL-Werte gefunden werden, aber nicht, wenn das Feld NULL-Werte zulässt. Dies ist das Feld, das ich als das auswählen werdeEindeutige KennungAttribut.

Obwohl dieser Layer ein räumlicher Layer ist, sind die Schritte auch für eine nicht-räumliche Tabelle gleich.

Nun zurück zu Ihrem Problem und ein paar Optionen für Lösungen. Ihre Tabelle enthält kein Feld für die eindeutige ID. Du brauchst einen. Sie haben ein paar Möglichkeiten.

  1. Fügen Sie Ihrer Tabelle das SQL Server-Äquivalent eines Autonumber-Felds hinzu. Diese Methode erstellt eine eindeutige ID, die sich in Bezug auf eine bestimmte Zeile nicht ändert. Sobald eine ID zugewiesen wurde, bleibt sie bestehen und wird nie wiederholt oder dupliziert.
  2. Erstellen Sie eine Ansicht in SQL Server basierend auf Ihrer vorhandenen Tabelle, und fügen Sie dort ein Feld für die automatische Nummerierung hinzu. Diese Methode erstellt ein Eindeutige ID ähnlich einem ArcGIS Objekt Identifikation. Es sollte NICHT als Grundlage für einen Join oder einen Bezug verwendet werden, da die Zuordnung von IDs zu Zeilen ausschließlich auf der Änderung der Sortierreihenfolge basiert. Sie ist jedoch ausreichend, um die Anforderung einer eindeutigen Tabellen-ID für einen Query-Layer zu erfüllen. Hier ist ein Beispielcode für diese Instanz:

    CREATE VIEW VIEW_NM AS SELECT Row_number() OVER(ORDER BY "EventName" DESC, "BoreholeID") AS tbl_id, "EventName", "Method", "BoreholeID" FROM yourtable

    ------ Bearbeiten ----- Es wurde ein Bedenken geäußert, dass die Verwendung einer Row_number()-Funktion keine angemessene eindeutige ID liefern würde, da sie möglicherweise andere Funktionen zurückgibt. In dem von mir angegebenen Fall ist dies insofern richtig, als dieSortieren nachFeld ist nicht eindeutig. Daher müssen Sie sicherstellen, dass Sie eine Kombination von Feldern in diese Funktion einschließen, die eine eindeutige Sortierreihenfolge oder Werte zurückgibt, wenn sie in eine Zahl umgewandelt werden. Dadurch wird sichergestellt, dass ein bestimmtes Feature dieselbe Objekt-ID zurückgibt, unabhängig davon, welche Abfrage in ArcGIS dafür platziert wird. Ich füge "BoreholdID" zum hinzuSortieren nachSektion.

    Ein Problem, das beim Arbeiten mit einer Ansicht auftreten kann, ist der Feldtyp, den ArcGIS auf dieses "tbl_id"-Feld anwendet. Es wird möglicherweise als Feldtyp angesehen, den es nicht verarbeiten kann, daher müssen Sie es möglicherweise in ein umwandelnGanze ZahlFeldtyp. So habe ich etwas Ähnliches mit einer Ansicht in PostgreSQL gemacht:

    SELECT (int4(Row_number() OVER(ORDER BY "EventName" DESC)) AS tbl_id

    Die Syntax für SQL Server kann geringfügig abweichen. Es könnte seinintanstattint4.

  3. Eine andere Möglichkeit zum Erstellen dieser eindeutigen ID besteht darin, das Tool Abfragetabelle erstellen zu verwenden. Mit diesem Werkzeug können Sie eine Tabelle auswählen, eine benutzerdefinierte SQL-Abfrage mithilfe von Datenbanktabellen anzeigen oder erstellen und diese in ArcGIS entweder als Layer oder als eigenständige Tabelle anzeigen. Einer der Parameter im Tool ist die Erstellung derTasteFeld. Dies geschieht wiederum durch Auswahl eines oder mehrerer Felder in der Abfrageschicht, die verwendet werden, um die ObjectID dynamisch zu erstellen. Dies entspricht weitgehend der Funktion Row_number(), da beide einen eindeutigen Bezeichner basierend auf den Daten im Abfrageergebnis erstellen. Der eine erledigt dies einfach auf der Datenbankseite, der andere verarbeitet es innerhalb von ArcGIS. Ein potenzieller Vorteil dieser Methode ist die einfache Möglichkeit, sie als Teil eines Python-Skripts einzubinden. Ein Beispiel finden Sie am Ende des Hilfedokuments.

Als Faustregel gilt, dass Sie für jede von Ihnen erstellte Tabelle, egal ob räumlich oder Attribut, ein eindeutiges Bezeichnerattribut haben möchten. Die meisten Datenbanken arbeiten effizienter mit Tabellen, in denen dieses Attribut vorhanden ist und als Primärschlüssel oder ähnliches bezeichnet wird. Es ermöglicht die Erstellung von Indizes, und in vielen Fällen ist die Bearbeitungs- und Auswahlfunktionalität eingeschränkt, wenn keine eindeutige ID vorhanden ist.

Probieren Sie es auf jeden Fall aus und sehen Sie, ob es funktioniert. Wie bereits erwähnt, kann ArcGIS beim Hinzufügen von Abfrage-Layern sehr speziell sein. Einige andere Probleme, die Sie möglicherweise haben, sind mit Feldtypen, die anders übersetzt werden als sie in der Datenbank definiert sind und wie ArcGIS sie interpretiert.

Mit diesem Hilfedokument können Sie sicherstellen, dass Sie Datentypen in Ihrer Tabelle in solche umwandeln, die von ArcGIS erkannt werden. In ArcGIS unterstützte SQL Server-Datentypen


SQL Server-Zeilenanzahl für alle Tabellen in einer Datenbank

Ich bin ein Datenbanktester und eine meiner Aufgaben besteht darin, die Zeilenanzahlen aus allen Tabellen in der Quelldatenbank abzurufen und sie mit den entsprechenden Tabellenzeilenanzahlen in der Zieldatenbank zu vergleichen. Wie erhalte ich die Zeilenanzahl aus allen Tabellen in einer SQL Server-Datenbank? Welche verschiedenen Ansätze gibt es, um diese Informationen zu erhalten? Sehen Sie sich diesen Tipp an, um Antworten auf diese und weitere Fragen zu erhalten.

Lösung

Es ist ein üblicher Schritt in jedem ETL-Projekt, die Zeilenanzahl zwischen Quell- und Zieldatenbanken als Teil der Testphase zu überprüfen. Die Zeilenanzahl aus jeder Tabelle einzeln zu erhalten und die Ergebnisse zu vergleichen und zu konsolidieren, kann eine mühsame Aufgabe sein. Daher kann jedes Skript/jede Lösung, die die Zeilenanzahlinformationen aus allen Tabellen in einer Datenbank abrufen kann, wirklich hilfreich und effektiv sein und den damit verbundenen Aufwand erheblich reduzieren. In diesem Tipp sehen wir vier verschiedene Ansätze zum Abrufen der Zeilenanzahl aus allen Tabellen in einer SQL Server-Datenbank.

Werfen wir einen Blick auf jeden der Ansätze:

  • sys.partitions-Katalogansicht
  • sys.dm_db_partition_stats Dynamische Verwaltungsansicht (DMV)
  • sp_MSforeachtable System Stored Procedure
  • COALESCE()-Funktion

4 Antworten 4

Klingt nach einer Timeout-Einstellung. Ihr SSMS denkt also, dass es zu lange dauert und bricht die Verbindung für Sie ab. Die SQL-Serverrollen werden zurück. Aber es gibt Hilfe. Sie sind nicht der Erste, dem das begegnet.

Für alle, die nicht auf den Link klicken wollen. Hier ist die preisgekrönte Antwort:

Nachdem ich auf den gleichen Fehler gestoßen war, stolperte ich über die entsprechende Einstellung.

Wählen Sie im Management Studio im Menü Extras Optionen aus und klicken Sie dann auf "Designer". Es gibt eine Option namens "Zeitüberschreitungswert der Verbindungszeichenfolge für Tabellendesigner-Updates überschreiben:" Im Feld "Zeitüberschreitung der Transaktion nach:" werden die magischen 30 Sekunden angezeigt

Öffnen Sie das SQL Server Management Studio --> Menü Extras --> Optionen --> Registerkarte Designer --> Tabellen- und Datenbankdesigner --> Erhöhen Sie das Timeout von 30 Sekunden auf 65535 Sekunden. --> OK

//Jetzt können Sie Ihre Tabellenänderungen speichern. //Hoffe das hilft, und schaut mal in meinem Blog @: //www.ogolla.blogspot.com

Diese Antwort kam für mich in Google, obwohl ich dachte, ich würde einen Index hinzufügen und keine Spalte ändern.

Es gibt einen besseren Weg, um langfristige Änderungen vorzunehmen:

1) Nehmen Sie die gewünschten Änderungen am Design der Tabelle vor. Drücken Sie nicht auf "Speichern".

2) Klicken Sie in SSMS auf Tabellen-Designer. Dann Änderungsskript generieren.

3) Im Fenster sehen Sie ein Skript, das bei Ausführung die Änderungen vornimmt, die Sie im Designer in die Warteschlange gestellt haben.

4) Sie können dieses Skript in SMSS speichern und ausführen oder, wenn Sie sich sicher sind, das Skript aus diesem Fenster in die Zwischenablage "kopieren". Sagen Sie "Nein", um die Datei zu speichern. Schließen Sie dann den Designer OHNE SPEICHERN (technischer Verlust Ihrer DB-Änderungen) und öffnen Sie ein neues Abfragefenster. Fügen Sie das Änderungsskript ein und führen Sie das Skript aus. Ihre Änderungen werden dann in die DB übernommen, auch wenn es Jahre dauert.


Wie kann ich eine Microsoft SQL Server-Datenbank in ein SQL-Skript übertragen?

Gibt es eine Möglichkeit, eine Microsoft SQL Server-Datenbank in ein SQL-Skript zu exportieren?

Ich suche nach etwas, das sich ähnlich wie mysqldump verhält, einen Datenbanknamen annimmt und ein einzelnes Skript erstellt, das alle Tabellen, gespeicherten Prozeduren neu erstellt, alle Daten erneut einfügt usw.

Ich habe http://vyaskn.tripod.com/code.htm#inserts gesehen, aber ich möchte idealerweise etwas, um alles (nicht nur die Daten) neu zu erstellen, was in einem einzigen Schritt funktioniert, um das endgültige Skript zu erstellen.


9 Antworten 9

Nach meinem Verständnis dieses Problems ist es ein "HOP" -Problem.

d.h. Sie versuchen, Server A zu verwenden, um Ihre Login-Daten (mit SSPI) an Server B weiterzuleiten.

In SQL Server 2005 haben sie eine ganze Reihe von Sicherheitsproblemen hinzugefügt, die dies schwieriger machen, als es sein sollte. Die Worte "Kerberos-Authentifizierung" werden zum Lebensmittelpunkt der meisten Systemadministratoren/DBAs. Es wird effektiv für die Pass-Through-Authentifizierung verwendet.

Hier sind die Grundlagen dessen, was Sie brauchen. 1) Die Server (A und B) müssen in Active Directory(AD) mit aktivierter Delegierung für Kerberos eingerichtet werden. (dies wird über Ihr Active Directory-Admin-Panel festgelegt)

2) Für das Dienstkonto, unter dem Ihre SQL-Server ausgeführt werden, muss auch die Delegierung aktiviert sein (dies wird auch über Ihr Active Directory-Admin-Panel eingestellt). - Wenn sie nicht unter einem Dienstkonto ausgeführt werden, müssen Sie eines erstellen.

3) Die Server müssen SPNs für die Instanz und den HOST und den Maschinennamen definiert haben. (Mit einem Tool namens SetSPN in den Windows-Support-Tools)

4) Möglicherweise müssen Sie Ihre Datenbank auf "vertrauenswürdig" setzen

ALTER DATABASE SET vertrauenswürdig ein

5) Nachdem Sie all dies erledigt haben, starten Sie Ihre Instanzen neu.

6) Versuchen Sie dann erneut, Ihren Verbindungsserver zu erstellen.

Schließlich können Sie Ihre Verbindung zu SQL Server testen. Dies sollte gut funktionieren, wenn Sie alles richtig konfiguriert haben.

Dies teilt Ihnen Ihren Verbindungsauthentifizierungstyp mit.

Sie möchten 'KERBEROS' hier bekommen und nicht 'NTLM'.

Es ist eine rutschige Piste, KERBEROS und Pass-Through-Delegation, bleib dabei und du wirst es irgendwann herausfinden.


Installieren

Stellen Sie zunächst sicher, dass Sie eine Kopie von OGR2OGR Version 1.8 oder höher haben (frühere Versionen haben den MSSQL-Treiber nicht installiert). Sie können es entweder aus den auf der GDAL-Seite bereitgestellten Quellen erstellen oder der Einfachheit halber vorkompilierte Windows-Binärdateien herunterladen und installieren, die als Teil des OSgeo4W-Pakets enthalten sind.

Lassen Sie uns nun einige Testdaten in einer SQL Server-Tabelle einrichten, die wir exportieren möchten. Um die gesamte Palette der OGR2OGR-Funktionen zu testen (oder sollte das sagen, "die gesamte Palette von Fehlermeldungen, die Sie erstellen können"?), werde ich eine Tabelle erstellen, die zwei verschiedene Geometriespalten enthält – eine Originalgeometrie und eine gepufferte Geometrie , gefüllt mit einer Reihe verschiedener Geometrietypen:

So sieht der Inhalt dieser Tabelle auf der Registerkarte "SSMS Spatial Results" aus:


MS SQL Server wird mit der Zeit langsamer?

Hat jemand von euch folgendes erlebt und eine Lösung gefunden:

Ein großer Teil des Back-Ends unserer Website ist MS SQL Server 2005. Jede oder zwei Wochen beginnt die Website langsamer zu laufen - und ich sehe, dass Abfragen in SQL immer länger dauern. Ich habe eine Abfrage, die ich gerne verwende:

Was ziemlich nützlich ist. es gibt eine Momentaufnahme von allem, was gerade auf Ihrem SQL-Server läuft. Das Schöne ist, dass selbst wenn Ihre CPU aus irgendeinem Grund auf 100% festgelegt ist und der Aktivitätsmonitor sich weigert zu laden (ich bin sicher, einige von Ihnen waren dort), diese Abfrage immer noch zurückkehrt und Sie sehen können, welche Abfrage Ihre DB zerstört.

Wenn ich dies oder den Aktivitätsmonitor während der Zeit ausführe, in der SQL langsamer wird, sehe ich keine spezifischen Abfragen, die das Problem verursachen - sie laufen ALLE auf der ganzen Linie langsamer. Wenn ich den MS SQL-Dienst neu starte, ist alles in Ordnung, er beschleunigt sich - für ein oder zwei Wochen, bis es wieder passiert.

Nichts, woran ich denken kann, hat sich geändert, aber das hat erst vor ein paar Monaten begonnen. Ideen?

Bitte beachten Sie, dass es bei dieser Verlangsamung der Datenbank egal ist, ob wir 100.000 Seitenaufrufe pro Stunde (geschäftigere Tageszeit) oder 10.000 Seitenaufrufe pro Stunde (langsame Zeit) erhalten, die Abfragen alle länger dauern als normal. Der Server wird nicht wirklich belastet - die CPU ist nicht hoch, die Plattenauslastung scheint nicht außer Kontrolle zu geraten. es fühlt sich an wie eine Indexfragmentierung oder ähnliches, aber das scheint nicht der Fall zu sein.

Was das Einfügen von Ergebnissen der Abfrage an, die ich oben eingefügt habe, kann ich wirklich nicht tun. Die obige Abfrage listet das Login des Benutzers, der die Aufgabe ausführt, die gesamte Abfrage usw. usw. auf. Und ich möchte wirklich nicht die Namen meiner Datenbanken, Tabellen, Spalten und die Logins online herausgeben :). Ich kann Ihnen sagen, dass die zu diesem Zeitpunkt ausgeführten Abfragen normale Standardabfragen für unsere Site sind, die ständig ausgeführt werden, nichts Außergewöhnliches.

Seit dem letzten Neustart sind ungefähr zwei Wochen vergangen. Ich habe mehrere Änderungen vorgenommen: Ich habe ein paar Abfragen gefunden, bei denen wir temporäre Tabellen, die völlig unnötig waren, stark nutzten und unsere Entwickler ihre Vorgehensweise ändern mussten. Ich habe die Größe einiger der ständig (langsam aber sicher) wachsenden Datenbanken auf eine intelligente Größe für ihr Wachstum angepasst. Ich habe auch die Autogrowth-Einstellungen für alles angepasst, um intelligenter zu sein (sie waren ALLE auf 1 MB Wachstum eingestellt). Zuletzt habe ich MSDB ein wenig aufgeräumt. Wir protokollieren den Versand und mussten wirklich keine jahrelangen Backup-Punkte aufbewahren. Ich habe einige Skripte geschrieben, die dies auf nur ein paar Monate beschränken. Ich werde diesen Thread weiter aktualisieren, da es noch zu früh ist, um zu sagen, ob das Problem bereits gelöst ist.


  1. Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf einen Server und wählen Sie Eigenschaften.
  2. Drücke den Speicher Knoten.
  3. Unter Serverspeicheroptionen, geben Sie den gewünschten Betrag ein Minimaler Serverspeicher und Maximaler Serverspeicher.

Sie können dies auch in T-SQL mit den folgenden Befehlen tun (Beispiel):

So beschränken Sie den Speicherverbrauch des MS SQL-Dienstes:

Legen Sie "max. Serverspeicher" in SQL Server Management Studio fest

Jetzt werden wir die Option "max server memory" festlegen, um die Speichernutzung durch SQL Server zu begrenzen. Wir können dies tun, indem wir mit der rechten Maustaste auf unsere Instanz klicken und "Eigenschaften" auswählen.

Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf einen Server und wählen Sie Eigenschaften.

Klicken Sie wie unten gezeigt auf den Knoten Speicher:

4. Geben Sie unter Serverspeicheroptionen die gewünschte Menge für den maximalen Serverspeicher ein. Wie Sie unten sehen können, richten wir den maximalen Serverspeicher auf 4096 MB (d. h. 4 GB) ein.

So beschränken Sie den Speicherverbrauch des MS SQL-Dienstes:

Wir können "max server memory" auch mit einem T-SQL-Skript festlegen:


Phasen von paginierten Reporting Services-Berichten

Eine Berichtsdefinition kann erstellt, veröffentlicht oder gespeichert, kompiliert, verarbeitet, zwischengespeichert, gerendert, angezeigt, exportiert und als Verlauf gespeichert werden. Wenn Sie einen Bericht ausführen, verarbeitet der Berichtsserver einen Bericht in drei Schritten: Berichtsverarbeitung, Datenverarbeitung und Rendering. Die Daten- und Berichtsverarbeitung erfolgt anhand einer Berichtsdefinition, die Ergebnisse liegen in einem internen Zwischenformat vor. Berichte im Zwischenformat werden anschließend in ein bestimmtes Anzeigeformat gerendert. Das folgende Diagramm zeigt die Phasen und Elemente der Berichtsverarbeitung.


Berichtsverarbeitungsdiagramm

Berichtsdefinition

Die auf einem Berichtsserver gespeicherte Berichtsdefinitionsdatei (.rdl). Weitere Informationen finden Sie unter Berichtsdefinitionssprache (SSRS).

Zusammengestellter Bericht und Zwischenberichtsformat

Der Bericht, der ausgewertete Ausdrücke, Parameter und ausgewertete Parametereigenschaften verwendet.

Snapshot- oder Berichtsverlauf

Ein Snapshot ist der Satz von Berichtsdaten zu einem bestimmten Zeitpunkt plus das Zwischenformat, das Berichtslayoutinformationen enthält. Weitere Informationen finden Sie unter Leistung, Snapshots, Caching (Reporting Services).

Verarbeiteter Bericht

Ein vollständig verarbeiteter Bericht, der sowohl Daten als auch Layoutinformationen enthält.

Gerenderter Bericht

Ein vollständig verarbeiteter Bericht wird an einen Berichtsrenderer gesendet, um die Daten und das Layout auf jeder Seite des angestrebten Renderingformats zu kombinieren. Rendering-Erweiterungen sind anpassbar und erweiterbar. Das Standardwiedergabeformat für einen Bericht ist HTML 4.0. Weitere Informationen finden Sie unter Seitenlayout und -Rendering (Berichts-Generator und SSRS) und Erweiterungen (SSRS).

Exportierter Bericht

Ein exportierter Bericht ist ein vollständig ausgelagerter Bericht, der in einem bestimmten Dateiformat gespeichert wird. Exportformate hängen von den installierten Rendering-Erweiterungen ab und können angepasst werden. Zu den Exportformaten gehören standardmäßig Excel, Word, XML, PDF, TIFF und CSV. Weitere Informationen finden Sie unter Exportieren von Berichten (Berichts-Generator und SSRS).