Microsoft hesabıyla oturum açın
Oturum açın veya hesap oluşturun.
Merhaba,
Farklı bir hesap seçin.
Birden çok hesabınız var
Oturum açmak istediğiniz hesabı seçin.

Microsoft SQL Server 2012 Service Pack 1 Düzeltme karşıdan yüklenebilen bir dosya dağıtılır. Koşuluyla, düzeltmeleri birikimlidir, her yeni sürüm tüm düzeltmeleri içerir ve sürüm önceki SQL Server 2012 Service Pack 1 ile gelen tüm güvenlik düzeltmelerini düzeltin.

Belirtiler

SQL Server 2012'de bir Transact-SQL deyimini çalıştırdığınızda, aşağıdaki hata iletisini alırsınız:

'Begi' yakınında yanlış sözdizimi.


Bu sorun, aşağıdaki koşullar geçerli olduğunda oluşur:

  • Eğer koşul deyimi içerir.

  • IF koşulu başlar ve END deyimleri içermez.

  • IF koşulu Başlamak deneyin bloğu tarafından izlenir.

  • Sorguyu çalıştırdığınızda, Eğer bloğu derlenmiştir.


Çözüm

Toplu güncelleştirme bilgileri

SQL Server 2012 SP1 için toplu güncelleştirme 4

Bu sorunla ilgili düzeltme, ilk toplu güncelleştirme 4'de yayımlanmıştır. Bu toplu güncelleştirme paketi SQL Server 2012 SP1'i elde etme hakkında daha fazla bilgi için Microsoft Bilgi Bankası makalesine gitmek için aşağıdaki makale numarasını tıklatın:

2833645 kümülatif 4 için SQL Server 2012 SP1 GüncelleştirmesiNot: Koşuluyla, yapılar toplu, her yeni düzeltme yayımlanan tüm düzeltmeleri içerir ve sürüm önceki SQL Server 2012 SP1'de bulunan tüm güvenlik düzeltmelerini düzeltin. Bu düzeltmeyi içeren en son düzeltme sürümü uygulama ele almanızı öneririz. Daha fazla bilgi için Microsoft Bilgi Bankası makalesine gitmek üzere aşağıdaki makale numarasına tıklayın:

2772858 SQL Server 2012, SQL Server 2012 Service Pack 1'de yayımlandıktan sonra yayımlanan oluşturur

Durum

Microsoft bu sorunun "Aşağıdakilere Uygulanır" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.

Daha fazla bilgi

Bu sorunu yeniden oluşturmak için SQL Server 2012'de aşağıdaki Transact-SQL deyimlerini çalıştırın:

DECLARE @i INT

IF object_id('tempdb..#temptable') IS NOT NULL
DROP TABLE #temptable

CREATE TABLE #temptable (id INT)
INSERT INTO #temptable VALUES (1),(2),(3);

IF year(getdate())=2012 SELECT @i=(SELECT COUNT(*) AS nr FROM #temptable);
BEGIN TRY
SELECT 'message'
END TRY

BEGIN CATCH
SELECT ERROR_MESSAGE()
END CATCH

Geçici çözüm

Bu soruna geçici bir çözüm bulmak için IF koşulu için başlar ve Bitiş ifadeleri ekleyin.

Başvurular

SQL Server için artımlı hizmet modeli hakkında daha fazla bilgi için Microsoft Bilgi Bankası makalesine gitmek için aşağıdaki makale numarasını tıklatın:

935897 artımlı bir hizmet modeli kullanılabilir SQL Server ekibinden bildirilen sorunlar için düzeltmeler sunmak içinSQL Server güncelleştirmelerinin adlandırma şeması hakkında daha fazla bilgi için Microsoft Bilgi Bankası makalesine gitmek için aşağıdaki makale numarasını tıklatın:

822499 adlandırma şeması Microsoft SQL Server yazılım güncelleştirme paketlerininYazılım güncelleştirme terminolojisi hakkında daha fazla bilgi için Microsoft Bilgi Bankası makalesine gitmek için aşağıdaki makale numarasını tıklatın:

824684 Microsoft yazılım güncelleştirmelerini açıklamak için kullanılan standart terminolojinin açıklaması

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.

Bu bilgi yararlı oldu mu?

Dil kalitesinden ne kadar memnunsunuz?
Deneyiminizi ne etkiledi?
Gönder’e bastığınızda, geri bildiriminiz Microsoft ürün ve hizmetlerini geliştirmek için kullanılır. BT yöneticiniz bu verileri toplayabilecek. Gizlilik Bildirimi.

Geri bildiriminiz için teşekkürler!

×