管理平台接口是什么,了解接口的作用和用途
243
2022-10-17
数据库运维管理系列之关于数据库脱敏和数据库加密的小技巧
在实际工作中,是否会遇到有如下的需求:
于是乎:
一个FUNCTION搞定了,前端程序在使用的时候,直接使用该函数即可。
函数的定义如下:
CREATE OR REPLACE FUNCTION DATA_PLUS(id_num IN varchar2) RETURN varchar2 IS
new_id varchar2(20);
BEGIN
IF length(id_num) >= 15 THEN
-- 身份证号码类的,保留前三后四位
new_id := replace(id_num, substr(id_num, 4, length(id_num) - 7), '***');
ELSIF length(id_num) = 9 THEN
-- 护照号码类的,保留前二后三位
new_id := replace(id_num, substr(id_num, 3, length(id_num) - 5), '***');
ELSIF length(id_num) = 11 THEN
-- 手机号码类的,保留前三后二位
new_id := replace(id_num, substr(id_num, 4, length(id_num) - 5), '***');
ELSE
new_id := id_num;
END IF;
RETURN new_id;
END;
其实mysql下会很简单一些:应用INSERT+LENGTH俩函数即可。
SELECT
'370285198812120433',
INSERT (
'370285198812120433',
4,
LENGTH('370285198812120433') - 7,
'***'
) AS col1,
'E19881212',
INSERT (
'E19881212',
3,
LENGTH('E19881212') - 5,
'***'
) AS col2,
'18562607972',
INSERT (
'18562607972',
4,
LENGTH('18562607972') - 5,
'***'
) AS col3;
上面的小技巧在数据脱敏还是蛮好用的,
在拓展一下,数据加解密等,都可以采用类似的方式等。
总之,在没钱买产品的时候,利用一下数据库的自身功能,还是能够实现一些需求的。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~