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

Cara Meningkatkan Ukuran Lampiran yang Diizinkan Saat Mengirim Email di SQL Server (T-SQL)

Saat Anda menggunakan Database Mail untuk mengirim email dengan lampiran, Anda harus memastikan bahwa ukuran file lampiran berada dalam ukuran file lampiran yang diizinkan.

Jika Anda perlu mengirim lampiran yang lebih besar dari batas lampiran, Anda harus meningkatkan batas itu.

Untungnya, meningkatkan ukuran file lampiran yang diizinkan dapat dilakukan dengan satu baris kode T-SQL.

Kesalahan

Berikut kesalahan yang akan Anda terima jika Anda mencoba mengirim lampiran yang lebih besar dari ukuran file lampiran yang diizinkan:

Msg 22051, Level 16, State 1, Line 0
File attachment or query results size exceeds allowable value of 1000000 bytes.

Periksa Batas

Jika Anda belum menerima kesalahan, Anda mungkin tidak tahu apa batasnya. Anda dapat menggunakan sysmail_help_configure_sp prosedur tersimpan di msdb database untuk memeriksa batas ukuran file lampiran.

EXEC msdb.dbo.sysmail_help_configure_sp 'MaxFileSize';

Hasil:

+-------------+--------------+---------------------------+
| paramname   | paramvalue   | description               |
|-------------+--------------+---------------------------|
| MaxFileSize | 1000000      | Default maximum file size |
+-------------+--------------+---------------------------+

Dalam contoh ini saya melewati MaxFileSize sebagai argumen untuk mempersempit hasil menjadi hanya opsi konfigurasi yang saya minati. Anda juga dapat menggunakan sysmail_help_configure_sp prosedur tanpa argumen untuk mengembalikan semua opsi konfigurasi.

Ubah Batas

Anda dapat mengubah batas ukuran file lampiran dengan sysmail_configure_sp prosedur tersimpan.

EXEC msdb.dbo.sysmail_configure_sp 'MaxFileSize','3000000';

Sekarang ketika kita menjalankan sysmail_help_configure_sp lagi, kita melihat nilai baru.

EXEC msdb.dbo.sysmail_help_configure_sp 'MaxFileSize';

Hasil:

+-------------+--------------+---------------------------+
| paramname   | paramvalue   | description               |
|-------------+--------------+---------------------------|
| MaxFileSize | 3000000      | Default maximum file size |
+-------------+--------------+---------------------------+

Perhatikan bahwa deskripsinya tetap sama. Dalam hal ini agak menyesatkan karena 1000000 adalah ukuran file maksimum default – bukan 4000000.

Anda dapat mengubah deskripsi dengan prosedur yang sama. Bahkan, Anda dapat menentukan parameter name=value pasang juga, jika Anda mau (ini juga berlaku untuk sysmail_configure_sp prosedur).

Mari kita lakukan lagi, tapi kali ini saya akan memperbarui deskripsi, dan saya akan menggunakan name=value berpasangan.

EXECUTE msdb.dbo.sysmail_configure_sp  
    @parameter_name = 'MaxFileSize', 
    @parameter_value = '4000000',
    @description = 'Current maximum file size';

Sekarang ketika kita menjalankan sysmail_help_configure_sp lagi, kita melihat nilai baru.

EXEC msdb.dbo.sysmail_help_configure_sp 
    @parameter_name = 'MaxFileSize';

Hasil:

+-------------+--------------+---------------------------+
| paramname   | paramvalue   | description               |
|-------------+--------------+---------------------------|
| MaxFileSize | 4000000      | Current maximum file size |
+-------------+--------------+---------------------------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Memilih Sejumlah Karakter dari Kiri atau Kanan String di SQL Server

  2. Bagaimana cara saya secara terprogram mengatur string koneksi untuk Entity-Framework Code-First?

  3. Jenis Kursor SQL Server - Kursor Dinamis | Tutorial SQL Server / Tutorial TSQL

  4. Mengapa tidak ada fungsi berjendela di klausa where?

  5. Cara Menemukan Hari Terakhir Bulan Ini di SQL Server