2017-11-24 3 views
1

Ich habe eine Anwendung geerbt, die SQL Server als Datenbank verwendet. Um die Tabellen zu verstehen, auf die von der Anwendung aus zugegriffen wird, wenn bestimmte Aufgaben in der Anwendung mit geschlossenem Code ausgeführt werden, verwende ich normalerweise SQL Profiler, um die Tabelle und Abfragen hinter den Kulissen für jede Funktion zu identifizieren (z. B. Hinzufügen eines Kunden).SQL Server Profiler - Textdata auf 'Prepare SQL' und 'EXEC Prepared SQL' Befehle leer

Bei dieser Anwendung sind jedoch alle ausgegebenen SQL-Anweisungen 'Prepare SQL' und 'Exec Prepared SQL', die beide in dieser Anwendung nichts in der Spalte 'TextData' zurückgeben, die normalerweise die ausgeführten SQL-Befehle anzeigt.
Die Anmeldeereignisse werden ebenfalls nicht angezeigt, und alle SQL-Anweisungen werden im Profiler angezeigt, der dem Anwendungsdienstkonto zugeordnet werden kann. Ich habe daher abgeleitet, dass sich Benutzer an der Anwendung anmelden, die Anwendung jedoch über das Dienstkonto mit der Datenbank kommuniziert und die SQL-Anweisungen irgendwie ausgeblendet sind.

Kann jemand den Inhalt der TextData-Spalte in den Anweisungen 'Prepare SQl' und 'Exec Prepared SQL' anzeigen/anzeigen, damit ich sehen kann, welche Tabellen die Anwendung verwendet? Ich weiß, dass es viele Pakete gibt, die behaupten, dass sie das tun können, aber ich vermute, dass sie nur die gleichen Informationen wie Profiler verwenden, also wird nichts extra angezeigt.

+0

Frage nur, ob Sie bereits das SQL: StmtStarting unter TSQL und SP: stmtStarting unter Stored Procedures auf der Registerkarte EventSelection der Eigenschaften Trace ausgewählt? – Shammas

+0

Sie haben etwas Subtiles identifiziert, das ich nicht entdeckt habe. – skittle

+0

Ich hatte nur TSQL-Anweisungen ausgewählt. Wenn ich auch 'Stored Procedures' Anweisungen wähle, dann sehe ich tatsächlich SQL-Anweisungen in den 'TextData'-Feldern, so dass das SQL nicht als solches versteckt ist - ich habe gerade eine Teilliste der SQL-Anweisungen ausgewählt, die in den Trace aufgenommen werden sollen . Danke für Ihre Hilfe. : o) – skittle

Antwort

0

Wählen Sie SQL: StmtStarting unter TSQL und SP: stmtStarting unter Stored Procedures auf der Registerkarte Event Selection der Eigenschaften Trace.

Auf diese Weise können Sie keine Anweisungen in den Textdaten verpassen.