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

Bagaimana saya bisa memasukkan lebih dari 8000 karakter dalam kolom VARCHAR(MAX) dengan ExecuteNonQuery?

REPLICATE mengembalikan tipe input terlepas dari penugasan selanjutnya. Ini menjengkelkan, tetapi untuk menghindari pemotongan senyap, coba:

SET @x = REPLICATE(CONVERT(VARCHAR(MAX), 'a'), 10000);

Ini karena SQL Server melakukan REPLICATE operasi sebelum mempertimbangkan apa yang Anda tetapkan atau berapa banyak karakter yang Anda coba kembangkan. Itu hanya peduli tentang ekspresi input untuk menentukan apa yang harus dikembalikan, dan jika inputnya bukan tipe maksimal, ia menganggap itu dimaksudkan untuk muat dalam 8.000 byte. Ini dijelaskan di Buku Daring :



  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 BIT Datatype – Panduan Utama

  2. Membuat Gambar Docker SQL Server khusus di atas Gambar Resmi

  3. Dapatkan Bagian Kanan dari sebuah String di SQL Server (T-SQL)

  4. Cara Memperbaiki "nama profil tidak valid" Saat Memperbarui Profil Email Database di SQL Server (T-SQL)

  5. Tabel Pivot dan Kolom Gabungan