Bisakah kita meneruskan array ke prosedur tersimpan di SQL Server?
Bisakah kita meneruskan array ke prosedur tersimpan di SQL Server?

Video: Bisakah kita meneruskan array ke prosedur tersimpan di SQL Server?

Video: Bisakah kita meneruskan array ke prosedur tersimpan di SQL Server?
Video: Pertemuan ke 7 2024, November
Anonim

Tidak ada dukungan untuk Himpunan di dalam sql server tapi ada beberapa cara yang kamu bisa lulus koleksi ke proses tersimpan.

Selain ini, bisakah kita melewati daftar dalam prosedur tersimpan?

Tidak, array/ daftar bisa ' tidak diteruskan ke SQL Server secara langsung. Opsi berikut tersedia: Lewat dibatasi koma Daftar dan kemudian memiliki fungsi dalam SQL, pisahkan Daftar . Dibatasi koma daftar akan kemungkinan besar akan diteruskan sebagai Nvarchar()

Kedua, bagaimana Anda memberikan nilai string yang dipisahkan koma ke prosedur tersimpan dalam SQL? Prosedur tersimpan berikut mendapatkan catatan Karyawan yang Idnya diteruskan menggunakan string yang dipisahkan (dibatasi) dengan koma.

  1. BUAT PROSEDUR GetEmployee.
  2. @EmployeeIds VARCHAR(100)
  3. SEBAGAI.
  4. MULAI.
  5. PILIH Nama Depan, Nama Belakang.
  6. DARI Karyawan.
  7. DI MANA EmployeeId DI(
  8. PILIH CAST(Item SEBAGAI INTEGER)

Akibatnya, mengapa array besar tidak boleh diteruskan ke prosedur berdasarkan nilai?

Alasan kamu bisa 'T lulus NS Himpunan oleh nilainya adalah karena disana adalah tidak ada cara khusus untuk melacak dan array's ukuran sedemikian rupa sehingga logika pemanggilan fungsi akan tahu berapa banyak memori yang harus dialokasikan dan apa yang harus disalin. Anda bisa lewat sebuah instance kelas karena kelas memiliki konstruktor. Array tidak.

Apa yang dimaksud dengan parameter nilai Tabel?

A meja - parameter berharga adalah parameter dengan meja Tipe. Menggunakan ini parameter , Anda dapat mengirim beberapa baris data ke prosedur tersimpan atau perintah SQL berparameter dalam bentuk a meja . Transact-SQL dapat digunakan untuk mengakses nilai kolom dari meja - parameter berharga.

Direkomendasikan: