Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menghentikan Perlaksanaan Skrip SQL Server dengan Berkesan Semasa Proses Pengesahan atau Carian?
Strategi untuk Mengganggu Perlaksanaan Skrip Pelayan SQL
Menghentikan skrip SQL Server pertengahan pelaksanaan selalunya diperlukan, terutamanya semasa operasi pengesahan atau carian data. Berikut adalah kaedah yang berkesan untuk mencapainya:
1. Pendekatan raiserror
:
Pernyataan raiserror
menawarkan cara yang berkesan untuk menghentikan pelaksanaan skrip. Menggunakan sintaks berikut:
<code class="language-sql">raiserror('Critical error encountered', 20, -1) with log</code>
Menetapkan tahap keterukan kepada 20 (atau lebih tinggi) dan termasuk WITH LOG
akan menamatkan skrip dan merekodkan ralat dalam log SQL Server.
2. Memanfaatkan Pilihan noexec
:
Kaedah ini berfungsi bersama dengan GO
pernyataan. Tetapan noexec on
menghalang arahan seterusnya daripada dilaksanakan. Ingat untuk mematikan noexec
sebelum meneruskan pelaksanaan.
Contoh Ilustrasi Menggabungkan Kedua-dua Kaedah:
<code class="language-sql">print 'Starting script execution...' go print 'Fatal error detected, script will terminate!' -- Method 1: Raiserror raiserror('Critical error encountered', 20, -1) with log -- Method 2: Noexec set noexec on print 'This message will not be printed.' go -- Re-enable execution (necessary in SSMS for script re-run) set noexec off</code>
Pertimbangan Penting:
raiserror
memerlukan keistimewaan pentadbir dan menutup sambungan pangkalan data.noexec
tidak menutup sambungan tetapi memerlukan pelaksanaan semula secara eksplisit.sqlcmd.exe
, kod keluar 2745 menunjukkan penamatan skrip.Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghentikan Perlaksanaan Skrip SQL Server dengan Berkesan Semasa Proses Pengesahan atau Carian?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!