现实中的数据库有很多重复数据。下面是实例:
有一个数据库,其有两个字段:pinyin (人的姓名拼音),mima (密码)
人的名字有很多重复的,更何况拼音呢。我的目的就是要:
1、把第二个重复的拼音后面加上动态的数字,如:zhangsan ,zhangsan2, zhangsan3 等。
2、把zhangsan2 之后的密码更改为:654321
做法:(以下是 SQL SERVER 的低效率做法,后面还会介绍ORACLE的高效率做法)
1、定义一个可滚动的、可动态更新的游标
2、把表中所有有重复的人名拼音写入的表变量,以用来逐个再和全表比对
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)