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

Menggabungkan nilai nvarchar(max) sepertinya tidak berfungsi (+=berfungsi sebagai =)

Operator +=hanya berlaku untuk tipe data numerik di SQL Server. Dokumentasi Microsoft di sini

Untuk penggabungan string, Anda perlu menulis tugas dan penggabungan secara terpisah.

DECLARE @sql nvarchar(max);
SELECT @sql = N'';
SELECT @sql = @sql + [definition] + N'
GO
'
FROM sys.sql_modules 
WHERE OBJECT_NAME(object_id) LIKE 'dt%'
ORDER BY OBJECT_NAME(object_id);

PRINT @sql;

Juga, jika Anda menjalankan kueri ini di Management Studio, ingatlah bahwa ada batasan ukuran data yang akan dikembalikan (termasuk dalam pernyataan cetak). Jadi, jika definisi modul Anda melebihi batas ini, mereka akan terpotong di output.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apa yang setara dengan LOCK_ESCALATION =TABLE di SQL Server 2005?

  2. cara yang efisien untuk mengimplementasikan paging

  3. Kontrol Sumber dan prosedur tersimpan

  4. Menganalisis skema database membutuhkan waktu berjam-jam

  5. Fitur Tersembunyi dari SQL Server