-- Cambiar las Password de Inicios de Sesión -- -- Origen: SQL Server 2000 -- Destino: SQL Server 2000 -- -- Notas: -- 1) Requiere del procedimiento almacenado sp_hexadecimal (KB246133) -- 2) Debe ejecutarse la salida de este código, con la opción allow updates -- exec sp_configure 'Allow Updates', 1 -- RECONFIGURE WITH OVERRIDE -- -- GuilleSQL - Un portal sobre Microsoft SQL Server en Castellano -- https://guillesql.es -- DECLARE curDBs CURSOR READ_ONLY FOR -- Inicios de Sesión de SQL Server con la Password rellena (excepto SA) SELECt name, password FROM master.dbo.sysxlogins WHERE srvid IS NULL AND password IS NOT NULL AND name IN (SELECT name FROM master.dbo.syslogins WHERE isntname=0 AND isntgroup=0) AND name <> 'sa' ORDER BY 1 DECLARE @name VARCHAR(256) DECLARE @password VARBINARY(256) DECLARE @text_password VARCHAR(256) OPEN curDBs FETCH NEXT FROM curDBs INTO @name,@password WHILE (@@fetch_status <> -1) BEGIN IF (@@fetch_status <> -2) BEGIN exec sp_hexadecimal @password, @text_password OUT DECLARE @message varchar(2000) SELECT @message = 'update master.dbo.sysxlogins ' SELECT @message = @message + 'set password=' + @text_password + ' ' SELECT @message = @message + 'where name=''' + @name + ''' ' SELECT @message = @message + 'and srvid is null ' PRINT @message END FETCH NEXT FROM curDBs INTO @name,@password END CLOSE curDBs DEALLOCATE curDBs GO