https://stackoverflow.com/questions/37275/sql-query-for-logins

https://www.mssqltips.com/sqlservertip/4299/sql-server-errors-with-drop-login-and-drop-user/

获取所有的用户

SELECT sid
FROM master..syslogins

筛选出db owner不是sa的数据库

SELECT ROW_NUMBER() OVER ( ORDER BY name ) AS RowNumber ,
name AS DatabaseName ,
SUSER_SNAME(owner_sid) AS DBOwner ,
is_read_only ,
state_desc
FROM sys.databases
WHERE SUSER_SNAME(owner_sid) <> 'sa';

通过下面的sql,批量将数据库owner不是sa的设置为sa。 排除了offline和readonly的,并且排除掉master,model,tempdb,distribution四个系统数据库

DECLARE @MyTable TABLE
(
RowNumber INT NOT NULL ,
DatabaseName NVARCHAR(500) NOT NULL ,
DBOwner NVARCHAR(500) NOT NULL
);
INSERT INTO @MyTable ( RowNumber ,
DatabaseName ,
DBOwner )
SELECT ROW_NUMBER() OVER ( ORDER BY name ) AS RowNumber ,
name AS DatabaseName ,
SUSER_SNAME(owner_sid) AS DBOwner
FROM sys.databases
WHERE state_desc <> 'OFFLINE'
AND is_read_only = 0
AND name NOT IN ( 'master', 'tempdb', 'model' ,
'distribution' ); DECLARE @CurrentRowNumber INT = 1;
DECLARE @MaxRowNumber INT;
SELECT @MaxRowNumber = MAX(RowNumber)
FROM @MyTable; DECLARE @SQLString NVARCHAR(500);
DECLARE @TempDatabaseName NVARCHAR(500);
WHILE ( @CurrentRowNumber <= @MaxRowNumber )
BEGIN
SELECT @TempDatabaseName = DatabaseName
FROM @MyTable
WHERE RowNumber = @CurrentRowNumber;
SET @SQLString = 'Use ' + @TempDatabaseName
+ '; EXECUTE sp_changedbowner ''sa''';
PRINT @SQLString;
EXECUTE sp_executesql @SQLString;
SET @CurrentRowNumber = @CurrentRowNumber + 1;
END;

sql server drop login failed的更多相关文章

  1. idea Connection to SQL Server - 公网8 failed java

    Connection to SQL Server - 公网8 failed java.sql.SQLException: I/O Error: SSO Failed: Native SSPI libr ...

  2. SQL Server查看login所授予的具体权限

    在SQL Server数据库中如何查看一个登录名(login)的具体权限呢,如果使用SSMS的UI界面查看登录名的具体权限的话,用户数据库非常多的话,要梳理完它所有的权限,操作又耗时又麻烦,个人十分崇 ...

  3. sql server drop talbe 自动删除关联的外键 ,权限体系(一)

    if object_id('Proc_DropTableWithFK') is not null begin drop proc dbo.Proc_DropTableWithFK end GO ) a ...

  4. sql server drop talbe 自动删除关联的外键 ,权限体系(二)

    alter table dbo.Sys_PowerTeamForUser add constraint FK_Sys_User_Sys_PowerTeamForUser foreign key (Sy ...

  5. How to add the ApplicationPoolIdentity to a SQL Server Login

    The ApplicationPoolIdentity is a virtual account in Windows that is dynamically generated when the a ...

  6. Microsoft SQL Server Version List [sqlserver 7.0-------sql server 2016]

    http://sqlserverbuilds.blogspot.jp/   What version of SQL Server do I have? This unofficial build ch ...

  7. Microsoft SQL Server Version List(SQL Server 版本)

    原帖地址 What version of SQL Server do I have? This unofficial build chart lists all of the known Servic ...

  8. SQL Server安全(1/11):SQL Server安全概述

    在保密你的服务器和数据,防备当前复杂的攻击,SQL Server有你需要的一切.但在你能有效使用这些安全功能前,你需要理解你面对的威胁和一些基本的安全概念.这篇文章提供了基础,因此你可以对SQL Se ...

  9. 第一篇 SQL Server安全概述

    本篇文章是SQL Server安全系列的第一篇,详细内容请参考原文. Relational databases are used in an amazing variety of applicatio ...

随机推荐

  1. 基于artDialog的扩展

    /* * * 引用此文件必须引用以下两个资源文件,并且还要引用jQuery * <link href="ui-dialog.css" rel="stylesheet ...

  2. Spring Boot (6) Spring Data JPA

    JPA 全称Java Persistence API,JPA通过JDK 5.0注解或xml描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 JPA是sun官方提出的java持久化规范, ...

  3. iOS网络——NSURLCache设置网络请求缓存

    今天在看HTTP协议,看到了response头中的cache-control,于是就深入的研究了一下.发现了iOS中一个一直被我忽略的类——NSURLCache类. NSURLCache NSURLC ...

  4. ★Java-----记事本编译、运行时注意事项

    1.文件名需要与源代码中公共类的名字相同,即class后面的名字: 2.Java中严格区分大小写: 3.记事本编辑好之后保存文件后缀必须是". java": 4.运行cmd,dos ...

  5. 揭开jQuery的面纱

    简单地说,jQuery是一个优秀的JavaScript类库,也就是使用JavaScript面向对象的性质编写的一个JavaScript类的集合.jQuery究竟能为我们提供哪些功能呢?简单地说可以从七 ...

  6. brew 安装的.net 运行时提示"Did you mean to run dotnet SDK commands?"

    原因未知,但有解决方案 使用 brew cask 安装的.NET Core brew cask install dotnet 结果运行时出现: 解决方案: 下载官方 .pkg 文件安装,顺便卸载掉 b ...

  7. class path resource [processes/] cannot be resolved to URL because it does not exist

    springboot整合activiti时报以下错误,原因是项目启动时检查流程文件 nested exception is java.io.FileNotFoundException: class p ...

  8. python tips:作为dict的key的类

    Python的dict由hash实现,解决hash冲突的方法是二次探查法.hash值相同的元素会形成链表.所以dict在查找key时,首先获取hash值,直接得到链表的表头:而后在链表中查找等于key ...

  9. PS学习列表

    1 去水印 祛痘 祛斑 2 新建画布,素材拖到ps中,图层 3 钢笔抠图,直线点,圆弧拖,遇到拐角按alt,ctrl+回车键将扣的图变为选区,ctrl+j复制一层上来 4 证件照换底

  10. 【udacity】机器学习-knn最近邻算法

    Evernote Export 1.基于实例的学习介绍 不同级别的学习,去除所有的数据点(xi​,yi​),然后放入一个数据库中,下次直接提取数据 但是这样的实现方法将不能进行泛化,这种方式只能简单的 ...