When you drop a user in Microsoft SQL Server, an error occurs:
1. Drop failed for User 'fastnet(就是要删除的user名)'. (Microsoft.SqlServer.Smo)
2. An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)
3. The database principal owns a schema in the database, and cannot be dropped. (.Net SqlClient Data Provider)
(Microsoft SQL Server, Error: 15138)
找了半天,这个msdn的方法最好
http://social.msdn.microsoft.com/Forums/en-US/sqlsecurity/thread/67ce8ae7-d47c-4515-9929-92d2a516934a
步骤很简单
假设你要删除某一数据库 的其中一个user 不是login的user用户,而是database的user 因为有schema的限制,所以你不能随便删除,删除了就会出现15138的问题,就是上面显示的。。要删除怎么办咧。。步骤如下
1、打开 数据库 选择某一个database,到 Security-》Users *记住是database下的某一个数据库
我这里要删除的是fastnet这个user
2、查看fastnet的属性,properties 看到他的schema
3、打开这个数据库的Shema ,
4、 打开fastnet的 properties-》search-》Browes 查看shema
选择一个跟fastnet不同名的owner 这才是修改了 fastnet的 owner。。不然根本删不了的。。。
我就把fastnet的owner 改成了db_securityadmin这个哦。。。你再ok 回到主界面
最后delete fastnet用户就ok啦。。。哈哈
我可是自己截图自己 写的哦。。。居然都是英文的方法,还是自己试一试比较有用。。。
哈哈 不错不错。。