實現場景及需求:
由於業務需求:包含顧客隱私不被泄露,將在測試環境進行數據庫脫敏操做python
python 3.6mysql
實現方法,截取訂單後四位數字,截取顧客前7位電話號碼,實現字符串拼接,將7位電話號碼和後4位訂單號進行拼接,而後直接修改數據庫sql
import pymysql conn = pymysql.connect( host='serverIP', port=3306, user='username', passwd='password', db='DBname', charset='utf8') cursor = conn.cursor() sql_select = 'select shop_id,phone_num from shopcar' res = cursor.execute(sql_select) result = cursor.fetchall() for i in result : only_id = i[0] only_int = str(only_id)[-4:] phone_num = i[1] phone_int=str(phone_num)[:7] m_sql=phone_int+only_int min_sql=int(m_sql) sql='update shopcar set phone_num="%s" where shop_id="%s"' % (m_sql,only_id) cursor.execute(sql) conn.commit() cursor.close() conn.close()
結果:數據庫
mysql> select * from shopcar; +---------+-------------+--------------------+ | shop_id | phone_num | auth_num | +---------+-------------+--------------------+ | 1245780 | 15816905780 | 429322199008084023 | | 1245781 | 15816905781 | 429322199008084024 | | 1245782 | 15816905782 | 429322199008084022 | | 1245783 | 15816905783 | 429322199008084011 | +---------+-------------+--------------------+ 4 rows in set (0.00 sec) mysql>