Gewusst wie: Aktivieren des Transact-SQL-Debuggings
Dieses Thema gilt für folgende Editionen:
Visual Studio Ultimate |
Visual Studio Premium |
Visual Studio Professional |
Visual Studio Express |
---|---|---|---|
Für das Transact-SQL-Debugging mit Visual Studio sind ein SQL Server-Datenbankserver ab SQL Server 2005 und die entsprechenden Berechtigungen für erforderlich.Falls die entsprechende SQL Server-Instanz auf einem anderen Computer ausgeführt wird, müssen Sie auch die Windows-Firewall auf beiden Computern konfigurieren.
Hinweis Das Debuggen von Transact-SQL mit SQL Server 2000 und früher wird nicht unterstützt.
Sie können mit Visual Studio auch SQL CLR-Code (Datenbankobjekte mit verwaltetem Code) debuggen.Zum Debuggen von SQL CLR auf einem Remotedatenbankserver müssen Sie den Remotedebugmonitor auf dem Computer mit der SQL Server-Instanz installieren.Weitere Informationen finden Sie unter How to: Set Up Remote Debugging und Debugging Database Objects That Use Managed Code (SQL CLR Debugging).
Weitere Informationen zum Debuggen von Transact-SQL mit SQL Server Management Studio finden Sie unter Verwenden des Transact-SQL-Debuggers.
So bereiten Sie SQL Server-Berechtigungen für die SQL Server-Instanz vor
Fügen Sie der festen SQL Server-Serverrolle sysadmin das Anwendungskonto hinzu.Das Anwendungskonto ist das Windows-Konto, unter dem Visual Studio ausgeführt wird.Führen Sie dazu die folgende Transact-SQL-Anweisung mit einem Benutzernamen aus, der auch ein Mitglied von sysadmin ist (Domain\Name ist der Windows-Benutzername für das Konto): sp_addsrvrolemember 'Domain\Name', 'sysadmin'
Fügen Sie der festen SQL Server-Serverrolle sysadmin das Verbindungskonto hinzu.Beim Verbindungskonto handelt es sich um den Windows- oder SQL Server-Benutzernamen, der vom Transact-SQL-Code verwendet wird, um eine Verbindung mit der SQL Server-Instanz herzustellen.Führen Sie dazu die folgende Transact-SQL-Anweisung mit einem Benutzernamen aus, der auch ein Mitglied von sysadmin ist (Domain\Name ist das entsprechende Konto): sp_addsrvrolemember 'Domain\Name', 'sysadmin'
Tipp
Aus den folgenden Gründen empfehlen wir, diesen Transact-SQL-Code nicht auf einem Produktionsserver, sondern einem Testserver zu debuggen: Das Debuggen ist ein Vorgang mit hohen Berechtigungen.Daher sind in SQL Server nur Mitglieder der festen Serverrolle sysadmin zum Debuggen berechtigt.Debugsitzungen werden oft über längere Zeiträume ausgeführt, während Sie die Vorgänge verschiedener Transact-SQL-Anweisungen untersuchen.Von der Sitzung eingerichtete Sperren, wie z. B. Aktualisierungssperren, können über längere Zeit beibehalten werden, bis die Sitzung beendet oder ein Commit oder Rollback für die Transaktion ausgeführt wird.
So bereiten Sie die Windows-Firewall für das Remotedebugging vor (wenn SQL Server auf einem anderen Computer ausgeführt wird)
Fügen Sie auf dem Computer mit Visual Studio der Ausnahmeliste für die Windows-Firewall Folgendes hinzu:
Das Programm Visual Studio, Devenv.exe
Den TCP-Anschluss 135
Fügen Sie auf dem Computer mit der SQL Server-Instanz der Ausnahmeliste für die Windows-Firewall Folgendes hinzu:
Das Programm SQL Server, sqlservr.exe.Standardmäßig wird sqlservr.exe im Verzeichnis "C:\Programme\Microsoft SQL Server\MSSQL10.Instanzname\MSSQL\Binn" installiert, wobei Instanzname im Fall der Standardinstanz MSSQLSERVER lautet und im Fall einer benannten Instanz dem Namen der Instanz entspricht.
Den TCP-Anschluss 135
Wenn die Domänenrichtlinie eine Netzwerkkommunikation über IPSec erfordert, müssen Sie zudem die Ports UDP 4500 und UDP 500 öffnen.
Siehe auch
Verweis
Transact-SQL-Debugging: Setupfehler und Problembehandlung
Konzepte
Andere Ressourcen
Einrichten des Transact-SQL-Debuggings
Debug Settings and Preparation
Enabling SQL Debugging on SQL 2000 Desktop Engines
How to: Set Up Remote Debugging
Debugging Database Objects That Use Managed Code (SQL CLR Debugging)