Berlaku Untuk
SQL Server 2012 Enterprise SQL Server 2012 Business Intelligence SQL Server 2012 Developer SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2012 Express

Perbaikan Microsoft SQL Server 2012 Service Pack 1 didistribusikan sebagai satu file yang dapat diunduh. Mengingat bahwa perbaikan bersifat kumulatif, setiap rilis baru berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan rilis perbaikan Service Pack 1 SQL Server 2012 sebelumnya.

Gejala

Ketika menjalankan pernyataan Transact-SQL di SQL Server 2012, Anda menerima pesan kesalahan berikut:

Sintaks yang salah di dekat 'begi'.

Masalah ini terjadi ketika kondisi berikut ini benar:

  • Pernyataan berisi kondisi IF.

  • Kondisi IF tidak berisi pernyataan BEGIN dan END.

  • Kondisi IF diikuti dengan blok BEGIN TRY.

  • Blok IF dikompresi ulang saat Anda menjalankan kueri.

Pemecahan Masalah

Informasi pembaruan kumulatif

Pembaruan Kumulatif 4 untuk SQL Server 2012 SP1

Perbaikan untuk masalah ini pertama kali dirilis dalam Pembaruan Kumulatif 4. Untuk informasi selengkapnya tentang cara mendapatkan paket pembaruan kumulatif ini untuk SQL Server 2012 SP1, klik nomor artikel berikut ini untuk masuk ke artikel di Pangkalan Pengetahuan Microsoft:

2833645 Pembaruan kumulatif 4 untuk SQL Server 2012 SP1Note Mengingat bahwa build bersifat kumulatif, setiap rilis perbaikan baru berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan rilis perbaikan SP1 SQL Server 2012 sebelumnya. Kami menyarankan Agar Anda mempertimbangkan untuk menerapkan rilis perbaikan terbaru yang berisi hotfix ini. Untuk informasi selengkapnya, klik nomor artikel berikut ini untuk masuk ke artikel di Pangkalan Pengetahuan Microsoft:

2772858 Build SQL Server 2012 yang dirilis setelah SQL Server 2012 Service Pack 1 dirilis

Status

Microsoft telah melakukan konfirmasi bahwa masalah ini timbul pada produk Microsoft yang tertera pada bagian "Berlaku untuk".

Informasi Selengkapnya

Untuk mereproduksi masalah ini, jalankan pernyataan Transact-SQL berikut ini di SQL Server 2012: DEKLARASI @i INTIF object_id('tempdb.. #temptable') BUKAN NULLDROP TABLE #temptableCREATE TABLE #temptable (id INT)INSERT INTO #temptable VALUES (1),(2),(3);IF year(getdate())=2012 SELECT @i=(SELECT COUNT(*) AS nr FROM #temptable);MULAI COBAPILIH 'pesan'AKHIRI COBAMULAI TANGKAPANPILIH ERROR_MESSAGE()AKHIRI PENANGKAPAN

Penyelesaian Masalah

Untuk mengatasi masalah ini, tambahkan pernyataan BEGIN dan END ke kondisi IF.

Referensi

Untuk informasi selengkapnya tentang Model Pelayanan Tambahan untuk SQL Server, klik nomor artikel berikut ini untuk masuk ke artikel di Pangkalan Pengetahuan Microsoft:

935897 Model Pelayanan Tambahan tersedia dari tim SQL Server untuk memberikan hotfix untuk masalah yang dilaporkan Untuk informasi selengkapnya tentang skema penamaan untuk pembaruan SQL Server, klik nomor artikel berikut ini untuk masuk ke artikel di Pangkalan Pengetahuan Microsoft:

822499 Skema penamaan untuk paket pembaruan perangkat lunak SQL Server Microsoft Untuk informasi selengkapnya tentang terminologi pembaruan perangkat lunak, klik nomor artikel berikut ini untuk masuk ke artikel di Pangkalan Pengetahuan Microsoft:

824684 Deskripsi tentang terminologi standar yang digunakan untuk menjelaskan pembaruan perangkat lunak Microsoft

Perlu bantuan lainnya?

Ingin opsi lainnya?

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