22 Kasım 2007 Perşembe

"Drop failed for Login 'Login_Adı'. The server principal owns an endpoint and cannot be dropped. (Microsoft SQL Server, Error: 15141)"

HATA MESAJI:
"Drop failed for Login 'Login_Adı'. The server principal owns an endpoint and cannot be dropped. (Microsoft SQL Server, Error: 15141)"

AÇIKLAMA:
SQL Server 2005' te bir Login' i silmeye çalıştığınızda bu hata ile karşılaşabilirsiniz. Nedeni de, bu Login' in sahip olduğu bir Endpoint' in bulunmasıdır.

SQL Server 2005' te Endpoint' ler veritabanı değil, sunucu bazındadırlar. Endpoint' lerinize SSMS (SQL Server Management Studio) ile, Object Explorer penceresindeki Server Object\Endpoints düğümleri altından da ulaşabilirsiniz.

Not: Endpoint' ler SSMS arayüzünden oluşturulamazlar. Sadece T-SQL kullanılarak CREATE ENDPOINT komutlarıyla oluşturulabilirler. Endpoint' ler hakkında daha fazla bilgi için buraya tıklayınız.

ÇÖZÜM:
Bu hatayı almamak için, önce silmek istediğiniz Login' e ait Endpoint' leri kaldırmanız gerekiyor.

Bunun için, yukarıda anlattığım şekilde Endpoint' lerinizi bulabilirsiniz. Bulduğunuz Endpoint' lerin hangi Login için yetkilendirdiğini bulmak için de, SSMS yoluyla bulduğunuz Endpoint' in üzerinde farenin sağ tuşuna tıklayıp Script Endpoint as: CREATE To seçeneklerini kullanabilirsiniz. Açılan sorgulama penceresinde AUTHORIZATION kısmını kontrol edebilirsiniz.

Hiç yorum yok: