暂无图片
检索数据库数据是否为11位手机号
我来答
分享
lzl
2021-11-10
检索数据库数据是否为11位手机号

想开发一个程序循环检测表的字段是否存储11位手机号,各位大佬有什么好办法吗?目前我想到的是jdbc连接库,拿到所有的表名,然后循环查询第一条数据,再用正则校验数据

除了这种方法还有别的吗,比如对服务器上的数据库文件校验,有没有开发好的工具可以用?请各位大佬提供思路啊

我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
薛晓刚

需求是什么?这种遍历所有表的不是真实的需求。

暂无图片 评论
暂无图片 有用 0
lzl
题主
2021-11-17
就是库里不允许有未加密的手机号,如果有就找出来加密
cqiwen
每个表只查一条记录得到的结果也不一定准确吧?全部表都查又不现实
暂无图片 评论
暂无图片 有用 0
DarkAthena

直接在数据库里用存储过程呗,具体逻辑和你用jdbc的逻辑是一样的。我之前用类似的方法找过一个特定的值是存在于哪个表的哪个字段。

直接用 select * from user_tab_cols 做游标写循环,拼接动态sql,如果查到了就记录一条数据,如果没查到或者报错就跳过(因为可能字段类型不能隐式转换)。


另外我猜测你这个需求是拿到了未知定义的数据库,想找找看哪些表里面有用户信息吧,这可不太好哦

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏