Gejala
Asumsikan Anda memiliki tabel Microsoft SQL Server yang memiliki satu atau beberapa indeks yang dibangun di dalamnya. Ketika Anda melakukan kueri terhadap tabel, SQL Server mungkin melakukan pengisian data yang tidak konsisten untuk kolom CHAR dan BINER. Perilaku yang tidak konsisten untuk mengembalikan kekosongan di akhir kolom data CHAR dan BINARY tergantung pada kondisi berikut:
- Pengaturan ANSI_PADDING saat kolom dibuat dalam tabel SQL Server.
- Keputusan untuk melakukan pemindaian tabel atau pencarian indeks pada kolom.
Penyebab
Dalam skenario tertentu, SQL Server dapat melakukan pengoptimalan yang memungkinkannya melewati banyak operasi untuk pengiriman data yang lebih cepat. Masalah ini terjadi karena SQL Server tidak mengenali bahwa pengoptimalan tidak dapat diterapkan untuk skenario di atas.
Informasi Selengkapnya
Perilaku SQL Server ini tidak sesuai dengan perilaku yang didokumentasikan dalam artikel berikut: Menggunakan data Char dan Varchar.
Catatan
Jika ANSI_PADDING AKTIF saat kolom NULL char dibuat, maka kolom tersebut berlaku sama seperti kolom char NOT NULL: nilai ditambahkan ke ukuran kolom. Jika ANSI_PADDING NONAKTIF saat kolom char NULL dibuat, kolom tersebut akan berperilaku seperti kolom varchar dengan ANSI_PADDING diatur OFF: blank belakang terpotong.
Resolusi
Masalah ini telah diperbaiki dalam pembaruan kumulatif berikut untuk SQL Server:
Pembaruan Kumulatif 2 untuk SQL Server 2017
Pembaruan Kumulatif 9 untuk SQL Server 2016
Pembaruan Kumulatif 6 untuk SQL Server 2016 SP1
Pembaruan Kumulatif 8 untuk SQL Server 2014 SP2
Pembaruan Kumulatif 7 untuk SQL Server 2014 SP1
Tentang pembaruan kumulatif untuk SQL Server:
Setiap pembaruan kumulatif baru untuk SQL Server berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan pembaruan kumulatif sebelumnya. Lihat pembaruan kumulatif terbaru untuk SQL Server:
Pembaruan kumulatif terbaru untuk SQL Server 2017
Pembaruan kumulatif terbaru untuk SQL Server 2016
Pembaruan kumulatif terbaru untuk SQL Server 2014
Status
Microsoft telah mengonfirmasi bahwa ini adalah masalah pada produk Microsoft yang tercantum di bagian "Berlaku untuk"
Referensi
Pelajari tentang terminologi yang digunakan Microsoft untuk menjelaskan pembaruan perangkat lunak.