-1
我试图通过存储过程更改用户密码。我想通过存储过程更改用户密码
DECLARE @newpwd VARCHAR(20)
DECLARE @usrid VARCHAR(50)
DECLARE @SQL NVARCHAR(4000)
DECLARE @oldpass VARCHAR(50)
SET @usrid = 'ddladmin'
SET @newpwd = '[email protected]'
SET @oldpass = '[email protected]'
SET @SQL = 'ALTER LOGIN ' + @usrid + ' WITH PASSWORD = ' + QUOTENAME(@newpwd, '''') + ' OLD_PASSWORD = ' + QUOTENAME(@oldpass, '''');
EXEC sp_executesql @SQL
有了上面的查询,我得到一个错误:
Cannot alter the login 'ddladmin', because it does not exist or you do not have permission.
但是,当我尝试直接通过alter
脚本,例如改变它
ALTER LOGIN ddladmin WITH PASSWORD ='[email protected]'
它正在工作。任何人都可以帮忙吗?
什么是通过一个过程改变它的原因?随着时间的推移自动改变密码?你的数据库连接应该经常改变吗?谁授权改变密码? –
其实我们正试图自动化增加安全..我们计划安排这项工作.. –
等等......什么?安排工作。这是一个应用程序用户吗?你如何执行行业标准密码?通常密码应该涉及一些更改过程。 –