使用SQL Server游标循环根据用户身份证后六位修改成密码
declare @sPassword varchar(200) DECLARE My_Cursor CURSOR --定义游标 FOR (select PersonnelCard from tb_User) --查出需要的集合放到游标中 OPEN My_Cursor; --打开游标 FETCH NEXT FROM My_Cursor into @sPassword; --读取第一行数据 WHILE @@FETCH_STATUS = 0 BEGIN UPDATE tb_User SET sPassWord = UPPER(RIGHT(sys.fn_varbintohexstr(HASHBYTES('MD5',right(@sPassword,6))),32)) WHERE CURRENT OF My_Cursor; --更新 FETCH NEXT FROM My_Cursor into @sPassword; --读取下一行数据 END CLOSE My_Cursor; --关闭游标 DEALLOCATE My_Cursor; --释放游标 GO