超越位置服务论坛
超越物联
微信查车
手机查车
物联小管家
智慧风控
车务在线

联系方式:

24小时QQ:1375182942

工作电话:029-88443911 (9点-18点)

技术微信
exlive二次开发交流QQ群: 335061247
  欢迎您:    请先登录  |  登 录  |  注 册   |  在 线  |  搜 索  |  帮 助   |  风 格  

论坛帖子
  『EXLIVE超越位置服务平台』 → 『  』 → 『  』 →  数据库修改sa密码提示未能找到存储过程sp_password

发表新帖子  发表新投票  回复此帖您是该帖的第1203 个阅读者
   * 贴子主题:    数据库修改sa密码提示未能找到存储过程sp_password  到底部  
 离线    jd
威望: 0
级别: 天王
魅力: 2469
经验: 9324
现金: 9780
发帖数: 149 篇
注册时间: 2012-10-17 14:27
  你未登录消息  查看 你未登录 好友 你未登录引用 
 
 数据库修改sa密码提示未能找到存储过程sp_password。
如下图


执行SQL.doc的SQL语句

相关附件如下:   sql.doc

  该帖子由:[ admin ] 于 2013-03-15 16:26:34 最后编辑
 


  发帖时间  2015-06-17 11:54    发帖者IP  保 密楼 主  楼主  
 离线    lzdb
威望: 0
级别: 侠客
魅力: 250
经验: 254
现金: 1160
发帖数: 0 篇
注册时间: 2013-03-01 17:35
  你未登录消息  查看 你未登录 好友 你未登录引用 
 
 对我来说太复杂了

 


  发帖时间  2013-03-16 13:00    发帖者IP  保 密第 1 楼  返回顶部  
 离线    jd
威望: 0
级别: 天王
魅力: 2469
经验: 9324
现金: 9780
发帖数: 149 篇
注册时间: 2012-10-17 14:27
  你未登录消息  查看 你未登录 好友 你未登录引用 
 
 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

 


  发帖时间  2015-06-17 11:54    发帖者IP  保 密第 2 楼  返回顶部  
  共1页  2个记录  

中文版权所有  [超越位置服务平台]
本论坛言论纯属发表者个人意见,与 『EXLIVE超越位置服务平台 』立场无关