解决SQL2000数据库连接失败

解决SQL2000数据库连接失败


2024年4月17日发(作者:)

解决此问题有两种方法:

第一种方法

先停止服务器服务,双击主机屏幕右下角的的图标,弹1. 出

界面选停止,再弹出的选项选择是。

2.解压data压缩包(没有的可以咨询售后服务人员),复制文

件夹里所有文件,然后进入D盘,D:Program FilesMicrosoft

SQL

ServerMSSQLData 这个路径,粘贴刚才复制的所有文件,

提示替换时选全部。

重新点击这个图标,弹出界面选,开始/3.继续,等图标变成

绿色三角即可关掉。

重新打开管理系统即可正常使用。

1

第二种方法第一步:

首先打开企业管理器,位置:服务器这台机器(也就是主机)

开始-程序-Microsoft SQL Server-企业管理器

依次点开-控制台根目录- Microsoft SQL Server- Microsoft

SQL组-(local)(Windows NT)-安全性-登录

2

sa项目,双击,弹出界面然后选中右面出现的

,1步数据库选项选成myhis第 2步密码选项删除掉密码,

然后点保存第

弹出选项不填写,直接点确定。此时,如果点确定之后界

面直接消失,则程序可以正常使用了。 就不需要操作第二

步了。第二步

如果弹出

3

错误2812:未能找到存储过程'sp_password'字样

服务器这台机器(也就是主机)开始

,位置:查询分析器”

“则

打开

-程序-Microsoft SQL Server-查询分析器

弹出界面如下图,直接点确定进入,

如果提示错误,则选中SQL Server身份验证(Q)再点确定进入

4

弹出界面如下

在红线箭头位置的光标处粘贴如下代码

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

5

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 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 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

where srvid IS NULL and

name = @loginame and

6

( (@old is null and password is null) or

END)) 0 1 ELSE WHEN (CASE xstatus&2048 = 2048 THEN (pwdcompare(@old,

password,

= 1) ) )

begin

raiserror(15211,-1,-1)

return (1)

end

-- CHANGE THE PASSWORD --

update

getdate(), = convert(varbinary(256), pwdencrypt(@new)), xdate2 set

password =

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

粘贴完毕后,点击红圈里的绿色三角的运行符号,

提示命令已成功完成。关掉查询分析器,再重复第一步操作即可。

7

8


发布者:admin,转转请注明出处:http://www.yc00.com/web/1713348494a2231173.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信