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

Microsoft mendistribusikan perbaikan Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) sebagai satu file yang dapat diunduh. Karena perbaikan bersifat kumulatif, setiap Edaran baru berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan rilis perbaikan SQL Server 2008 R2 Service Pack 1 (SP1) sebelumnya.

Gejala

Pertimbangkan skenario berikut:

  • Anda memiliki kolom tipe data datetimeoffset dalam tabel di Microsoft sql server 2008 R2 atau di Microsoft sql server 2012.

  • Anda membuat indeks pada kolom datetimeoffset .

  • Anda mengonversi tipe data datetimeoffset menjadi tipe data smalldatetime dengan menggunakan fungsi cast atau Convert tanpa argumen gaya , atau ketika nilai argumen gaya adalah 0.

  • Hasil dari fungsi cast atau Convert digunakan dalam filter dalam kueri Transact-SQL.

  • Anda menjalankan kueri Transact-SQL.

Dalam skenario ini, hasil yang dikembalikan oleh kueri tidak benar karena filter tidak berfungsi dengan benar. Misalnya, asumsikan kolom datetimeoffset yang bernama "tanggal" berisi nilai berikut ini:

  • 2011-05-21 23:00:00 -01:00

  • 2011-05-21 23:00:00 +00:00

  • 2011-05-21 23:00:00 +01:00

Anda menjalankan kueri berikut ini:

SELECT Date FROM TestTable WHERE CAST(Date AS smalldatetime)= '2011-05-21 23:00:00'

Hasil kueri mengembalikan satu baris saja. Namun, hasil yang diharapkan akan mengembalikan baris untuk ketiga nilai tersebut.

Pemecahan Masalah

Informasi pembaruan kumulatif

SQL Server 2012

Perbaikan untuk masalah ini pertama kali dirilis dalam pembaruan kumulatif 3 untuk SQL Server 2012. Untuk informasi selengkapnya tentang paket pembaruan kumulatif ini, klik nomor artikel berikut ini untuk menampilkan artikel di Basis Pengetahuan Microsoft:

2723749 Paket pembaruan kumulatif 3 untuk SQL Server 2012Catatan Karena Build bersifat kumulatif, setiap rilis perbaikan baru berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan rilis perbaikan SQL Server 2012 sebelumnya. Microsoft menganjurkan agar Anda mempertimbangkan penerapan rilis perbaikan terbaru yang berisi hotfix ini. Untuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft:

2692828 Build 2012 SQL Server yang dirilis setelah SQL Server 2012 dirilis Anda harus menerapkan hotfix SQL Server 2012 ke instalasi SQL Server 2012.

SQL Server 2008 R2 Paket Layanan 2

Perbaikan untuk masalah ini pertama kali dirilis dalam pembaruan kumulatif 1 untuk SQL Server 2008 R2 Service Pack 2. Untuk informasi selengkapnya tentang cara mendapatkan paket pembaruan kumulatif ini, klik nomor artikel berikut ini untuk menampilkan artikel di Basis Pengetahuan Microsoft:

2720425 Paket pembaruan kumulatif 1 untuk SQL Server 2008 R2 Service Pack 2Catatan Karena Build bersifat kumulatif, setiap rilis perbaikan baru berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan rilis perbaikan SQL Server 2008 R2 sebelumnya. Kami menyarankan agar Anda mempertimbangkan untuk menerapkan rilis perbaikan terbaru yang berisi hotfix ini. Untuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft:

2730301 Build SQL Server 2008 R2 yang dirilis setelah SQL Server 2008 R2 Service Pack 2 dirilis

SQL Server 2008 R2 SP1

Perbaikan untuk masalah ini pertama kali dirilis dalam pembaruan kumulatif 7. Untuk informasi selengkapnya tentang cara mendapatkan paket pembaruan kumulatif ini untuk SQL Server 2008 R2 Service Pack 1, klik nomor artikel berikut ini untuk menampilkan artikel di Basis Pengetahuan Microsoft:

2703282 Paket pembaruan kumulatif 7 untuk SQL Server 2008 R2 SP1Catatan Karena Build bersifat kumulatif, setiap edaran perbaikan baru berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan rilis perbaikan SQL Server 2008 R2 Service Pack 1 sebelumnya. Kami menyarankan agar Anda mempertimbangkan untuk menerapkan rilis perbaikan terbaru yang berisi hotfix ini. Untuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft:

2567616 Build SQL Server 2008 R2 yang dirilis setelah SQL Server 2008 R2 SP1 dirilis

Informasi Selengkapnya

Untuk mereproduksi masalah, ikuti langkah-langkah berikut:

  1. Jalankan kueri berikut ini untuk membuat tabel dengan kolom datetimeoffset dan untuk menyisipkan beberapa catatan:CREATE TABLE #TestTimeZones (dto datetimeoffset(0)); GO INSERT INTO #TestTimeZones(dto) VALUES ('2011-05-21 23:00:00 -01:00'), ('2011-05-21 23:00:00 +00:00'), ('2011-05-21 23:00:00 +01:00'); GO

  2. Jalankan kueri berikut ini, dan Anda bisa melihat bahwa ketiga nilai dicantumkan dengan benar di hasil yang dikembalikan:DECLARE @t smalldatetime = '2011-05-21 23:00:00' SELECT dto AS withoutIndex FROM #TestTimeZones WHERE CAST(dto AS smalldatetime)=@t;

  3. Jalankan kueri berikut ini untuk membuat indeks pada kolom "DTO" dan untuk mengulangi kueri yang sama:CREATE INDEX IX_testTimeZones_Dto ON #TestTimeZones(dto); GO -- Repeat the same query DECLARE @t smalldatetime = '2011-05-21 23:00:00' SELECT dto AS withIndex FROM #TestTimeZones WHERE CAST(dto A smalldatetime)=@t; GO

  4. Jalankan kueri dalam langkah 2 lagi. Kali ini, kueri mengembalikan satu baris saja.

  5. Jalankan kueri berikut ini untuk menghapus indeks dan tabel yang Anda buat:DROP INDEX IX_testTimeZones_Dto ON #TestTimeZones; GO DROP TALBE #TestTimeZones; GO

Referensi

Untuk informasi selengkapnya tentang fungsi CAST dan konversi, kunjungi situs web MSDN berikut:

Informasi umum tentang fungsi CAST dan konversi di SQL Server

Status

Microsoft telah mengonfirmasi bahwa ini adalah masalah pada produk Microsoft yang tercantum di bagian "Berlaku untuk".

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!

×