Lebih
INSERT INTO @TABLE EXEC @query dengan SQL Server 2000
Benarkah SQL Server 2000, Anda tidak bisa memasukkan ke dalam variabel tabel menggunakan exec?
Saya mencoba skrip ini dan mendapat pesan kesalahan EXECUTE tidak dapat digunakan sebagai sumber ketika memasukkan ke dalam variabel tabel.
declare @tmp TABLE (code varchar(50), mount money)
DECLARE @q nvarchar(4000)
SET @q = 'SELECT coa_code, amount FROM T_Ledger_detail'
INSERT INTO @tmp (code, mount)
EXEC sp_executesql (@q)
SELECT * from @tmp
Jika itu benar, apa yang harus saya lakukan?
37
3
N.B. - pertanyaan dan jawaban ini berhubungan dengan SQL Server versi 2000. Pada versi yang lebih baru, pembatasan pada
INSERT INTO @table_variable ... EXEC ...
dicabut sehingga tidak berlaku untuk versi yang lebih baru.Anda harus beralih ke tabel temp:
Dari dokumentasi:
Dokumentasinya menyesatkan.
Saya memiliki kode berikut yang berjalan dalam produksi
Jika Anda ingin dalam kueri dinamis