Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

Ikhtisar Pernyataan T-SQL PRINT

Pernyataan PRINT sangat penting dalam bahasa pemrograman apa pun. Mereka akan mengizinkan rutinitas atau program yang Anda jalankan untuk membuang beberapa jenis log atau informasi ke dalam konsol untuk dilihat dan dianalisis. CETAK berharga untuk men-debug masalah dalam kode aplikasi. Dalam artikel ini, kita akan mengeksplorasi cara efektif menggunakan pernyataan PRINT untuk membantu men-debug prosedur dan kode tersimpan T-SQL yang kompleks.

Mendapatkan S tar dengan SQL PRINT

Satu-satunya hal yang perlu Anda lakukan untuk menggunakan PRINT adalah menambahkan perintah PRINT sebelum nilai yang ingin Anda cetak ke konsol. Dalam contoh ini, konsol akan menjadi SQL Server Management Studio, yang merupakan lingkungan pengembangan utama yang paling dikenal oleh sebagian besar pengembang SQL Server. Di dalam SSMS, Anda dapat melihat pernyataan PRINT pada tab “Pesan” setelah menjalankan kueri.

Hasil akan menampilkan SQL yang ditanyakan dari tabel database Anda.

Pesan akan menampilkan pernyataan PRINT

Mari kita jalankan perintah berikut secara berkelompok:

--RUN A SELECT TO VIEW THE "RESULTS" TAB
SELECT 1

--RUN PRINT IN LOWERCASE
print 'hello coding sight reader'

--RUN PRINT IN UPPERCASE
PRINT 'HELLO CODING SIGHT READER'

Script ini membuat poin-poin berikut:

  • PILIH dan CETAK tersebut dapat dijalankan bersama
  • Hasil PILIH dan CETAK terisi di tab terpisah di SSMS
  • Pernyataan PRINT tidak peka huruf besar/kecil di SQL Server

Contoh Sederhana

Mencetak dari Variabel T-SQL

Dalam contoh di bawah ini, variabel @PRINTVAR diatur ke nilai string "PRINTVAR". Variabel tersebut kemudian dicetak pada dua baris terpisah di konsol manajemen dengan menggabungkan nilainya dengan CHAR(13).


--SETING A VARIABLE AND PRINTING IT
DECLARE @PRINTVAR VARCHAR(500)
SET @PRINTVAR = 'PRINTVAR'
PRINT @PRINTVAR + CHAR(13) + @PRINTVAR --PRINT THE SAME VARIABLE TWICE ON DIFFERENT LINES.

Mencetak D Other Lainnya ata T ya

NVARCHAR adalah tipe data target yang akan diperlukan saat Anda mencetak ke konsol di SSMS. Jadi tipe data lain mungkin secara eksplisit dilemparkan ke NVARCHAR dengan pemeran atau konversi.

DECLARE @XML XML

SET @XML = '<root>
<A>*A*</A>
<B>*B*</B>
<C>*C*</C>
<body>*Body*</body>
</root>'
PRINT CAST(@XML as NVARCHAR(MAX))

Mencetak a Variabel T-SQL dalam L op

Dalam contoh di bawah ini, variabel tipe @I akan ditingkatkan selama setiap iterasi dari loop dan dicetak. Ini adalah contoh yang baik dari kasus penggunaan PRINT untuk memantau perubahan dalam rutinitas.

--ITERATE IN A WHILE LOOP AND PRINT EACH ITERATION.
DECLARE @I INT = 1

WHILE(@I <= 20)
	BEGIN
		PRINT @I
		SET @I += 1
	END

Contoh Kompleks

Kami telah membahas beberapa konsep sederhana tentang bagaimana memulai menggunakan pernyataan PRINT di T-SQL. Mari kita periksa contoh yang lebih kuat dan rumit. Kami akan membuat prosedur tersimpan yang akan menerima dua nilai integer dan mengalikan kedua nilai tersebut bersama-sama. Sementara jawabannya akan dikembalikan pada hasil, kami juga akan menampilkan tabel perkalian dalam pesan dengan pernyataan PRINT.

Kami juga akan mengaktifkan NOCOUNT sehingga kami tidak mendapatkan 1 baris pesan yang terpengaruh di tabel perkalian.

CREATE PROC SPX_MULTIPLY_VALUES(@A INT, @B INT)
AS

SET NOCOUNT ON --REMOVE THE 1 ROWS AFFECTED IN MESSAGE
SELECT @A * @B --RETURN ANSWER

--RETURN MULTIPLICATION TABLE
PRINT  '1  '+	'2  '+	'3  '+	'4  '+	'5  '+	'6  '+	'7  '+	'8  '+	'9  '+	'10 '
PRINT  '2  '+	'4  '+	'6  '+	'8  '+	'10 '+	'12 '+	'14 '+	'16 '+	'18 '+	'20 '
PRINT  '3  '+	'6  '+	'9  '+	'12 '+	'15 '+	'18 '+	'21 '+	'24 '+	'27 '+	'30 '
PRINT  '4  '+	'8  '+	'12 '+	'16 '+	'20 '+	'24 '+	'28 '+	'32 '+	'36 '+	'40 '
PRINT  '5  '+	'10 '+	'15 '+	'20 '+	'25 '+	'30 '+	'35 '+	'40 '+	'45 '+	'50 '
PRINT  '6  '+	'12 '+	'18 '+	'24 '+	'30 '+	'36 '+	'42 '+	'48 '+	'54 '+	'60 '
PRINT  '7  '+	'14 '+	'21 '+	'28 '+	'35 '+	'42 '+	'49 '+	'56 '+	'63 '+	'70 '
PRINT  '8  '+	'16 '+	'24 '+	'32 '+	'40 '+	'48 '+	'56 '+	'64 '+	'72 '+	'80 '
PRINT  '9  '+	'18 '+	'27 '+	'36 '+	'45 '+	'54 '+	'63 '+	'72 '+	'81 '+	'90 '
PRINT  '10 '+	'20 '+	'30 '+	'40 '+	'50 '+	'60 '+	'70 '+	'80 '+	'90 '+	'100 '

RETURN

--EXECUTE THE PROCEDURE FOR 1 X 8
EXEC dbo.SPX_MULTIPLY_VALUES 1,8

Hasil dari pemanggilan prosedur yang sebenarnya hanya mengalikan dua bilangan bulat bersama-sama. Pernyataan PRINT juga berjalan secara bersamaan dan menyediakan tabel perkalian yang dapat digunakan untuk memeriksa matematika dan memang 1 x 8 =8. Ini adalah contoh yang baik untuk membawa detail ekstra ke dalam prosedur tersimpan melalui pernyataan cetak.

Kasus Penggunaan

Pencatatan Tambahan

Contoh di sini tidak terlalu rumit, tetapi di dunia nyata, Anda mungkin mengalami beberapa logika rumit dalam prosedur tersimpan. Pernyataan PRINT dapat membantu mempersempit kompleksitas tersebut dan memberikan wawasan tentang variabel dan kejadian di dalamnya. Jika ragu, tambahkan pernyataan PRINT, Anda dapat mengomentarinya, tetapi wawasan yang diberikan dapat menghemat waktu dan tenaga Anda nanti.

Ringkasan

Kami telah membahas pernyataan PRINT di T-SQL. Ini menghasilkan pesan yang dapat diambil di SQL Server Management Studio atau dikembalikan ke aplikasi klien yang membaca dari database SQL Server Anda. Kami membahas pendekatan untuk mencetak variabel T-SQL serta pertimbangan tipe data lainnya. Kami menggunakan pernyataan PRINT dalam satu lingkaran dan prosedur tersimpan yang lebih rumit untuk menunjukkan nilai yang dapat diberikan PRINT dalam cara operasional sehari-hari.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hindari HA/DR Solution Self-Delusi

  2. Bagaimana Rencana Paralel Memulai – Bagian 3

  3. Pelajari Analisis Data Dasar dengan Fungsi SQL Window

  4. Pentingnya Garis Dasar

  5. Pemindaian Urutan Alokasi