Masuk dengan Microsoft
Masuk atau buat akun.
Halo,
Pilih akun lain.
Anda memiliki beberapa akun
Pilih akun yang ingin Anda gunakan untuk masuk.

Gejala

Pertimbangkan skenario berikut ini:

  • Server tertaut dikonfigurasi antara server lokal dan server jauh keduanya memiliki contoh Microsoft SQL Server 2012.

  • Server lokal dikonfigurasi dengan menggunakan satu pemeriksaan, seperti pemeriksaan case-sensitive.

  • Server jarak jauh memiliki objek yang dikonfigurasi di pemeriksaan berbeda dari server lokal, seperti pemeriksaan sensitif.

  • Sambungan yang dibuat dari Microsoft JDBC driver untuk SQL Server, driver Microsoft ODBC SQL Server, penyedia SQL OLE DB atau SQL Native Client ke server lokal.

  • Pengandar mengeksekusi kueri pemutakhiran Transact-SQL sebagai pernyataan siap yang memanggil prosedur sp_prepexec disimpan di server lokal.

  • Permintaan pembaruan tabel di server jauh. Ini termasuk objek kolom yang menggunakan pemeriksaan berbeda dari server lokal.

Dalam skenario ini, Anda mungkin mengalami kinerja yang lambat eksekusi query. Jika Anda memeriksa rencana eksekusi query pemutakhiran, Anda mungkin melihat bahwa pemindaian jauh dijalankan pada tabel di server jauh tanpa filter. Oleh karena itu, permintaan mungkin melakukan banyak dibaca saat memindai tabel jauh dan kemudian mengambil semua baris kembali ke server lokal.

Misalnya, permintaan disiapkan di server lokal yang memiliki pemeriksaan case-sensitive default, dan server jauh memiliki tabel K1 yang berisi kolom yang sensitif. Update akan memindai semua baris K1.
DECLARE @p1 INTEXEC sp_prepexec @p1 output, N'@P0 NVARCHAR(16), @P1 NVARCHAR(16)',
N'UPDATE RemoteServer.RemoteDatabase.dbo.T1 SET COL1=@P0 WHERE COL2=@P1',
N'a', N'a'
SELECT @p1

Penyebab

Masalah ini terjadi karena permintaan siap update akan memindai tabel jauh saat pemeriksaan tidak cocok pada kedua server.

Setiap pembaruan kumulatif yang baru untuk SQL Server berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan pembaruan kumulatif sebelumnya. Periksa pembaruan kumulatif terbaru untuk SQL Server:


Informasi HotfixTersedia hotfix yang didukung dari Microsoft. Namun, hotfix ini ditujukan untuk memperbaiki masalah yang dijelaskan di artikel ini. Menerapkan hotfix ini hanya ke sistem yang mengalami masalah khusus ini.

Apabila hotfix tersedia untuk diunduh, ada bagian "Tersedia unduhan Hotfix" di bagian atas artikel Pangkalan Pengetahuan ini. Jika bagian ini tidak muncul, kirimkan permintaan ke layanan pelanggan Microsoft dan dukungan untuk mendapatkan hotfix.

Catatan Jika terjadi masalah tambahan atau apabila pemecahan masalah apa pun diperlukan, Anda mungkin harus membuat permintaan layanan secara terpisah. Biaya dukungan biasa akan berlaku untuk dukungan tambahan pertanyaan dan masalah yang tidak memenuhi syarat untuk hotfix ini. Untuk daftar lengkap nomor telepon layanan pelanggan Microsoft dan dukungan atau untuk membuat permintaan layanan terpisah, kunjungi situs web Microsoft berikut:

http://support.microsoft.com/contactus/?ws=supportCatatan Formulir "Tersedia Unduhan Hotfix" menampilkan bahasa hotfix tersedia. Jika Anda tidak melihat bahasa Anda, hal ini karena hotfix tidak tersedia untuk bahasa tersebut.

PrasyaratUntuk menerapkan hotfix ini, Anda harus menginstal SQL Server 2012.

Informasi registriAnda tidak harus mengubah registri setelah Anda menerapkan perbaikan terbaru ini.

Informasi penggantian hotfixHotfix ini tidak menggantikan hotfix lainnya.


Status

Microsoft telah memastikan bahwa ini merupakan masalah di dalam produk Microsoft sebagaimana tercantum di bagian "Berlaku untuk".

Pemecahan masalah

Untuk menyelesaikan banyak masalah, gunakan salah satu dari metode berikut ini:

  • Jangan gunakan pernyataan siap dalam kode sumber aplikasi klien. Anda dapat menggunakan pernyataan ad-hoc atau callable pernyataan seperti disimpan prosedur alih-alih jika pengandar mendukung antarmuka tersebut.

  • Gunakan pemeriksaan cocok pada kedua server.

Informasi lebih lanjut

Untuk mengaktifkan bendera pelacakan, menambahkan parameter permulaan -T4199 atau DBCC TRACEON(4199,-1) sebelum pernyataan siap dikompilasi untuk mengaktifkan perilaku.

Anda dapat menggunakan salah satu dari metode berikut untuk mengaktifkan bendera pelacakan:

  • Sebelum Anda menjalankan SQL Server, menggunakan Manajer konfigurasi Microsoft SQL Server, klik kanan item yang terpengaruh, dan menambahkan parameter permulaan -T4199 sehingga tetap di seluruh dimulai ulang dan di semua sambungan ke contoh di masa mendatang.

  • Dinamis mengaktifkan tataan runtime setelah layanan akan dimulai, dan secara global untuk semua sambungan "(-1)." Pastikan untuk mengosongkan tembolok prosedur jika Anda berencana untuk melakukan pengujian dengan switch diaktifkan atau dinonaktifkan.

    Gunakan berikut ini untuk mengaktifkan tataan global dan dinamis:
    DBCC TRACEON(4199,-1)DBCC TRACESTATUS(-1)
    DBCC FREEPROCCACHE
    Gunakan berikut ini untuk menonaktifkan tataan global dan dinamis:
    DBCC TRACEOFF(4199,-1)DBCC TRACESTATUS(-1)
    DBCC FREEPROCCACHE


Perlu bantuan lainnya?

Ingin opsi lainnya?

Jelajahi manfaat langganan, telusuri kursus pelatihan, pelajari cara mengamankan perangkat Anda, dan banyak lagi.

Komunitas membantu Anda bertanya dan menjawab pertanyaan, memberikan umpan balik, dan mendengar dari para ahli yang memiliki pengetahuan yang luas.

Apakah informasi ini berguna?

Seberapa puaskah Anda dengan kualitas bahasanya?
Apa yang memengaruhi pengalaman Anda?
Dengan menekan kirim, umpan balik Anda akan digunakan untuk meningkatkan produk dan layanan Microsoft. Admin TI Anda akan dapat mengumpulkan data ini. Pernyataan Privasi.

Terima kasih atas umpan balik Anda!

×