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

SqlFunction gagal membuka koneksi konteks meskipun DataAccessKind.Read hadir

Masalahnya adalah sebagai berikut:

  1. SQLCLR tidak mengizinkan akses data apa pun di dalam TestFillRow

  2. Meskipun "tampaknya" TestFillRow Anda tidak mengakses data, cara kompiler menerjemahkan kode dengan pernyataan "hasil" adalah dengan benar-benar menunda eksekusi hingga panggilan .MoveNext() pertama ke iterator. Oleh karena itu pernyataan berikut:

    using (SqlConnection con = new SqlConnection("context connection=true"))        
    

    dieksekusi di dalam TestFillRow ... yang ilegal.

Jangan gunakan pengembalian hasil; alih-alih memuat seluruh hasil ke List<> dan kembalikan daftar di akhir Fungsi UD.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Gabung alami di SQL Server

  2. Fungsi yang ditentukan pengguna deterministik Sql Server

  3. Mengembalikan nilai dan hasil yang ditetapkan dari prosedur tersimpan asp klasik

  4. Konversi dan pembulatan implisit

  5. Hasilkan laporan dari URL - Layanan Pelaporan SQL Server 2008