10 Şubat 2014 Pazartesi

Bir SQL Server veritabanının versiyonunu bulma

Selam!

Zaman zaman bir veritabanının versiyonunu bulmamız gerekebiliyor, özellikle de versiyonu daha yüksek olan bir veritabanını versiyonu daha düşük olan bir SQL Server Instance'ına Attach etmeye kalktığımızda ve aşağıdakine benzer bir hata ile karşılaştığımızda:

The database 'veritabanı_adı' cannot be opened because it is version 665. This server supports version 661 and earlier. A downgrade path is not supported.

Böyle bir hata ile karşılaştığımızda buradaki 661 ile (artık sizin ortamınızda ne olursa?) bizim Instance'ımızın versiyonu kastediliyor diye bunun hangi versiyon olduğunu az çok bildiğimizi düşünüyorum. Fakat 665 de nedir?

Maalesef bu veritabanı bilgileri Microsoft tarafından resmi olarak kayıt altında alınmadı, çünkü BOL'de de belirtildiği üzere bu bilgi Internal.

Bununla birlikte, sağolsun bir arkadaş bunları bir kenara not etmiş, ben de gerektiği anda ulaşabilelim diye burada değinmek istedim!

http://weblogs.sqlteam.com/dang/archive/2011/07/17/internal-sql-server-database-version-numbers.aspx

Bu Blog'da bir SQL Server 2012 veritabanın versiyonunun ne olduğu yazılı değil, bunu da ben eklemiş olayım:

SQL Server Version:                    Internal Database Version:
SQL Server 2012 + SP1                 706

Veritabanınızın versiyonunun ne olduğunu öğrenmek için aşağıdaki kodu kullanabilirsiniz:

SELECT DatabasePropertyex ('veritabanı_adı', 'version');

Bazı arkadaşlarım bu versiyon bilgisini SQL Server Instance versiyonu ile karıştırabilir diye aşağıdaki bilgiyi de paylaşmak istedim. SQL Server Instance'ının versiyon bilgisi aşağıdaki kod ile bulunabilir:

SELECT @@version

veya

SELECT SERVERPROPERTY('productversion')

Kolay gelsin,
Ekrem Önsoy

Hiç yorum yok: