Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bagaimana cara melihat konten lengkap kolom teks atau varchar(MAX) di SQL Server 2008 Management Studio?

SSMS hanya mengizinkan data tak terbatas untuk data XML. Ini bukan default dan perlu disetel di opsi.

Salah satu trik yang mungkin berhasil dalam keadaan yang sangat terbatas adalah dengan menamai kolom dengan cara khusus seperti di bawah ini sehingga diperlakukan sebagai data XML.

DECLARE @S varchar(max) = 'A'

SET @S =  REPLICATE(@S,100000) + 'B' 

SELECT @S as [XML_F52E2B61-18A1-11d1-B105-00805F49916B]

Di SSMS (setidaknya versi 2012 hingga saat ini 18.3) ini menampilkan hasil seperti di bawah ini

Mengkliknya akan membuka hasil lengkap di penampil XML. Menggulir ke kanan menunjukkan karakter terakhir B dipertahankan,

Namun ini memang memiliki beberapa masalah yang signifikan. Menambahkan kolom ekstra ke kueri akan memecah efek dan semua baris tambahan menjadi bersambung dengan yang pertama. Akhirnya jika string berisi karakter seperti < membuka penampil XML gagal dengan kesalahan penguraian.

Cara yang lebih kuat untuk melakukan ini yang menghindari masalah SQL Server mengonversi < ke < dll atau gagal karena karakter ini di bawah (kredit Adam Machanic di sini).

DECLARE @S varchar(max)

SELECT @S = ''

SELECT @S = @S + '
' + OBJECT_DEFINITION(OBJECT_ID) FROM SYS.PROCEDURES

SELECT @S AS [processing-instruction(x)] FOR XML PATH('')


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server membagi CSV menjadi beberapa baris

  2. Cara Memperbaiki SQL Server Mendeteksi Kesalahan I/O Berbasis Konsistensi Logis

  3. Bagaimana cara menambahkan grup pengguna Direktori Aktif sebagai login di SQL Server

  4. Bagaimana saya bisa mendapatkan jumlah beberapa nilai datetime?

  5. Buat Kolom "Terakhir Dimodifikasi" di SQL Server