Sdílet prostřednictvím


Určit akci pro bod zlomu

platí pro:SQL Server

Akce zarážky určuje vlastní úlohu, kterou debugger Transact-SQL provádí pro zarážku. Pokud je dosažen zadaný počet zásahů a je splněna podmínka pro bod zarážky, ladicí program provede akci zadanou pro tento bod zarážky.

Úvahy o akcích

Výchozí akcí pro zarážku je přerušit provádění, když jsou splněny jak počet zásahů, tak podmínka zarážky. Primárním použitím akce v debuggeru Transact-SQL je zobrazit informace v okně Výstup ladicího programu.

Zpráva je specifikována v políčku Zobrazit zprávu v okně výstupu: jako textový řetězec, který obsahuje výrazy s informacemi z laděného objektu Transact-SQL. Výrazy zahrnují:

  • Výraz Transact-SQL, obsažený ve složených závorkách ({}). Výrazy mohou zahrnovat Transact-SQL proměnné, parametry a vestavěné funkce. Mezi příklady patří {@MyVariable}, {@NameParameter}, {@@SPID}nebo {SERVERPROPERTY('ProcessID')}.

  • Jedno z následujících klíčových slov:

    • $ADDRESS vrátí název uložené procedury nebo uživatelem definované funkce, kde je zarážka nastavena. Pokud je zarážka umístěna v editorovém okně, $ADDRESS vrátí název souboru skriptu, který se právě upravuje. $ADDRESS a $FUNCTION vracejí stejné informace v ladicím nástroji Transact-SQL.

    • $CALLER vrátí název jednotky Transact-SQL kódu, který volal uloženou proceduru nebo funkci. Pokud je zarážka v okně editoru, $CALLER vrátí <No caller available>. Pokud je zarážka v uložené proceduře nebo uživatelem definované funkci, která je volaná z kódu v okně editoru, $CALLER vrátí název upravovaného souboru. Pokud je zarážka v uložené proceduře nebo uživatelsky definované funkci, která je volána z jiné uložené procedury nebo funkce, $CALLER vrátí název volající procedury nebo funkce.

    • $CALLSTACK vrátí zásobník volání funkcí v posloupnosti, která volala aktuální uloženou proceduru nebo uživatelsky definovanou funkci. Pokud je zarážka v okně editoru, $CALLSTACK vrátí název souboru skriptu, který upravujete.

    • $FUNCTION vrátí název uložené procedury nebo uživatelem definované funkce, kde je zarážka nastavena. Pokud je zarážka umístěna v okně editoru, $FUNCTION vrátí název souboru skriptu, který se právě upravuje.

    • $PID a $PNAME vrátí ID a název procesu operačního systému, na kterém je spuštěna instance databázového stroje, ve které běží Transact-SQL. $PID vrátí stejné ID jako SERVERPROPERTY('ProcessID')s tím rozdílem, že $PID je šestnáctková hodnota, zatímco SERVERPROPERTY('ProcessID') je desetinná hodnota.

    • $TID a $TNAME vrací ID a název vlákna operačního systému, které spouští dávku Transact-SQL. Vlákno je přidružené k procesu, ve kterém je spuštěna instance databázového stroje. $TID vrátí stejnou hodnotu jako SELECT kpid FROM sys.sysprocesses WHERE spid = @@SPIDs tím rozdílem, že $TID je šestnáctková hodnota, zatímco kpid je desetinná hodnota.

  • Můžete také použít zpětné lomítko (\) jako únikový znak, který ve zprávě umožňuje použít složené závorky a zpětná lomítka: \{, \}a \\.

Určit akci

  1. V okně editoru klikněte pravým tlačítkem myši na symbol bodu přerušení a v místní nabídce vyberte Akce.

    -nebo-

    V okně Breakpointy klikněte pravým tlačítkem myši na ikonu breakpointu a v místní nabídce vyberte Nastavení.

  2. V dialogovém okně nastavení přerušení vyberte možnost Akce.

  3. V dialogovém okně Zobrazit zprávu v okně Výstup: zadejte výraz.

  4. Pokud nechcete, aby zarážka pozastavila provádění, vyberte Pokračovat v provádění kódu. Tato možnost je aktivní pouze v případě, že vyberete možnost Akce.

  5. Výběrem Zavřít implementujte změny.