18 Eylül 2008 Perşembe

The database principal owns a schema in the database, and cannot be dropped.

The database principal owns a schema in the database, and cannot be dropped.

Hatası alınınca şunlar yapılmalı;

1.Server/Security/Logins/ user silinmeli.
2.Server/Databses/dbname/Security/Roles/ ilgili rol silinmeli.
3.Eğer silmiyorsa o zaman tablomuzda veya sp lerimizde bu shema kullanılıyor demektir.

O zaman şunu yaparız ilgili veritabanında mevcut tablolarımız için şemayı değiştiririz.;

exec sp_MSforeachtable "ALTER SCHEMA [dbo] TRANSFER ? PRINT '? OK' "

Böylece yeni şemamız dbo oldu.

Tekrar 2. adıma geçip silelim.İşlem başarılı olacaktır.

1 yorum:

Adsız dedi ki...

Paylaşım için teşekkürler. Benim karşılaştığım sorunda dediklerinize ek olarak aşağıdaki betiği çalıştırmam ve sahipliği geri db_owner'a vermem gerekti. Böylece kullanıcıyı silebildim.

ALTER AUTHORIZATION ON SCHEMA::[db_owner] TO [db_owner]