SET QUOTED_IDENTIFIER ON 
GO 
SET ANSI_NULLS OFF 
GO 
create procedure sp_password 
    @old sysname = NULL,        -- the old (current) password
    @new sysname,               -- the new password 
    @loginame sysname = NULL    -- user to change password on
as 
    -- SETUP RUNTIME OPTIONS / DECLARE VARIABLES --
 set nocount on 
    declare @self int 
    select @self = CASE WHEN @loginame is null THEN 1 ELSE 2 END
    -- RESOLVE LOGIN NAME
    if @loginame is null 
        select @loginame = suser_sname() 
    -- CHECK PERMISSIONS (SecurityAdmin per Richard Waymire) --
 IF (not is_srvrolemember('securityadmin') = 1)
        AND not @self = 1
 begin 
    dbcc auditevent (107, @self, 0, @loginame, NULL, NULL, NULL) 
    raiserror(15210,-1,-1)
    return (1)
 end
 ELSE
 begin 
    dbcc auditevent (107, @self, 1, @loginame, NULL, NULL, NULL)
 end 
    -- DISALLOW USER TRANSACTION --
 set implicit_transactions off
 IF (@@trancount > 0)
 begin 
  raiserror(15002,-1,-1,'sp_password')
  return (1)
 end 
    -- RESOLVE LOGIN NAME (disallows nt names) 
    if not exists (select * from master.dbo.syslogins where
                    loginname = @loginame and isntname = 0)
 begin 
  raiserror(15007,-1,-1,@loginame)
  return (1)
 end 
 -- IF non-SYSADMIN ATTEMPTING CHANGE TO SYSADMIN, REQUIRE PASSWORD (218078) --
 if (@self <> 1 AND is_srvrolemember('sysadmin') = 0 AND exists 
   (SELECT * FROM master.dbo.syslogins WHERE loginname = @loginame and isntname = 0
    AND sysadmin = 1) )
  SELECT @self = 1 
    -- CHECK OLD PASSWORD IF NEEDED --
    if (@self = 1 or @old is not null) 
        if not exists (select * from master.dbo.sysxlogins
                        where srvid IS NULL and
            name = @loginame and 
                     ( (@old is null and password is null) or
                              (pwdcompare(@old,
password,
(CASE
WHEN
xstatus&2048
=
2048
THEN
1
ELSE
0 END)) = 1) )   )
        begin 
      raiserror(15211,-1,-1)
      return (1)
     end 
    -- CHANGE THE PASSWORD --
    update master.dbo.sysxlogins 
 set password = convert(varbinary(256), pwdencrypt(@new)), xdate2 = getdate(), xstatus = xstatus
& (~2048) 
 where name = @loginame and srvid IS NULL 
 -- UPDATE PROTECTION TIMESTAMP FOR MASTER DB, TO INDICATE SYSLOGINS CHANGE -- 
 exec('use master grant all to null') 
    -- FINALIZATION: RETURN SUCCESS/FAILURE --
 if @@error <> 0
        return (1) 
    raiserror(15478,-1,-1)
 return  (0) -- sp_password
GO 
SET QUOTED_IDENTIFIER OFF 
GO 
SET ANSI_NULLS ON 
GO

SQL数据库: 错误2812 未能找到存储过程 sp_password的更多相关文章

  1. SQL2000数据库密码被替换,重置密码提示未能找到存储过程sp_password解决方案

    利用windows身份验证进入查询分析器后在master数据库下运行如下脚本: create procedure sp_password @old sysname = NULL, -- the old ...

  2. 错误 1 未能找到元数据文件“C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files/wwwroot/7cb4fcd

    错误 1 未能找到元数据文件“C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files/wwwroot/7cb4fcd ...

  3. 错误 1 未能找到类型或命名空间名称“DataPager”(是否缺少 using 指令或程序集引用?)

    鄙人在设计器SearchTab.xaml中添加了如下一个分页控件: <sdk:DataPager x:Name="dataPagerPrj" Grid.Row="3 ...

  4. 分析器错误消息: 未能找到 CodeDom 提供程序类型

    ylbtech-Error-WebForm:分析器错误消息: 未能找到 CodeDom 提供程序类型“Microsoft.CodeDom.Providers.DotNetCompilerPlatfor ...

  5. sqlserver 2008 建立订阅发布时 报错 解决方案 “错误 2812” 无法创建存储过程

    11月10日早上  一大早,还在地铁14号线上 ,接到同事给的信息 说我们的XX系统宕机了,本想没什么问题,一般服务器 只要硬件没有问题 重启一下就可以了, 但是事与愿违,偏偏最后检测到服务器磁盘阵列 ...

  6. 解决 ASP.NET 编辑错误"CS0006: 未能找到元数据文件C:\WINDOWS\assembly\GAC_32\System.EnterpriseServices\2.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices.dll"

    问题背景: 公司最近给我配置了一台新Windows 7旗舰版的电脑,这几天一直在迁移文件,因为新电脑上安装Sqlserver r2失败,解决方法是要安装一个800+MB的安装包 由于最近手上事情比较多 ...

  7. vs的一个奇葩错误 : 未能找到任何适合于指定的区域性或非特定区域性的资源...

    摘要: VS2005下进行开发的时候遇到的问头:未能找到任何适合于指定的区域性或非特定区域性的资源.请确保在编译时已将“xxx.Form1.resources”正确嵌入或链接到程序集“xxx”,或者确 ...

  8. javax.transaction.xa.XAException: java.sql.SQLException: 无法创建 XA 控制连接。错误: 未能找到存储过程 'master..xp_sqljdbc_xa_init'

    配置JTA SQL Server XADataSource参考:https://msdn.microsoft.com/zh-cn/library/aa342335.aspx 使用 JDBC 驱动程序 ...

  9. 错误 6 未能找到类型或命名空间名称“BLL”(是否缺少 using 指令或程序集引用?)

    出现这个错误,要确保先引用BLL.dll, 如果引用之后还没有解决这个问题的话,确认一下程序集FrameWork版本与项目FrameWork版本一致.右击程序集属性可以更改.

随机推荐

  1. 3 分钟轻松搭建 Ruby 项目自动化持续集成

    任何事情超过 90 秒就应该自动化,这是程序员的终极打开方式.Automating shapes smarter future. 这是一篇关于 Ruby 项目持续集成的快速指导教程,教大家如何使用 f ...

  2. SVG 基础

    <!doctype html><html lang="en"><head> <meta charset="UTF-8" ...

  3. Jquery判断数组中是否包含某个元素$.inArray()的用法

    判断数组里面是否包含某个元素可以使用 $.inArray("元素(字符串)",数组名称) 进行判断 ,当存在该元素(字符串)时,返回该元素在数组的下标,不存在时返回 -1 示例代码 ...

  4. Android WebView 总结 —— Java和JavaScript交互

    交互如何实现 实现Java和js交互十分便捷.通常只需要以下几步. WebView开启JavaScript脚本执行 WebView设置供JavaScript调用的交互接口. 客户端和网页端编写调用对方 ...

  5. 面试小记---外部脚本必须包含 <script> 标签吗?

    外部脚本必须包含 <script> 标签吗? 答案是否定的. 身为小白的我一开始也是以为这句话的对了,因为本来嘛,引用外部脚本不都用的是<script>标签中的src属性吗.所 ...

  6. (转)rlwrap真是一个好东西

    在Linux下面使用sqlplus很不爽,上下键,退格键都不能用,严重降低生产效率. 某一天终于发现了这个rlwrap这个好东西,特写此文记录. 下载地址如下: http://utopia.knowa ...

  7. spring源码分析之spring-core asm概述

    ASM是什么? ASM is an all purpose Java bytecode manipulation and analysis framework. It can be used to m ...

  8. Hadoop阅读笔记(四)——一幅图看透MapReduce机制

    时至今日,已然看到第十章,似乎越是焦躁什么时候能翻完这本圣经的时候也让自己变得更加浮躁,想想后面还有一半的行程没走,我觉得这样“有口无心”的学习方式是不奏效的,或者是收效甚微的.如果有幸能有大牛路过, ...

  9. Windows Azure Active Directory (1) 前言 - 基于声明的验证和授权

    <Windows Azure Platform 系列文章目录> 在我们介绍整套系统架构之前,我们需要首先定义一些基本的概念. 用户及其属性: 用户值得是要使用某项服务的个体.用户一般都有一 ...

  10. java并发编程(3):ThreadLocal

    转载:http://www.cnblogs.com/dolphin0520/p/3920407.html 一. 对ThreadLocal的理解 ThreadLocal,很多地方叫做线程本地变量,也有地 ...