下面是编程之家 jb51.cc 通过网络收集整理的代码片段。

编程之家小编现在分享给大家,也给大家做个参考。

3 实例演练

3.1 测试环境

使用Scott/[email protected]

--3.2.1 创建数据表

Drop Table Test_User;

CREATE TABLE Test_User (

UserName VARCHAR2(30) NOT NULL,   PassWord VARCHAR2(2000) NOT NULL

)

/

--3.2.2 创建程序包

Create Or Replace Package Test_MD5 AS

Function FN_GetMD5(P_Str In VarChar2)

Return VarChar2;

Function FN_CheckUser

(P_UserName In VarChar2

,P_Password In VarChar2)

Return Number;

End;

/

CREATE OR REPLACE PACKAGE BODY Test_MD5 AS

FUNCTION FN_GetMD5 (P_Str IN VARCHAR2)

RETURN VARCHAR2 AS

BEGIN

RETURN DBMS_OBFUSCATION_TOOLKIT.MD5(

input_string => Upper(P_Str));

END;

Function FN_CheckUser

(P_UserName IN VARCHAR2

,P_Password IN VARCHAR2)

Return Number

Is

L_Password VarChar2(2000);

BEGIN

SELECT

Utl_Raw.Cast_To_Raw(Password)

INTO

L_Password

FROM

Test_User

WHERE

Upper(UserName) = UPPER(P_UserName);

If Utl_Raw.Cast_To_Raw(FN_GetMD5(P_Password))=L_Password Then

Return 1;

Else

Return 0;

End If;

EXCEPTION

WHEN NO_DATA_FOUND THEN

Return 0;

END;

End;

/

--3.3 测试

Delete Test_User;

Insert Into Test_User Values('A',Test_MD5.FN_GetMD5('aa'));

Insert Into Test_User Values('B',Test_MD5.FN_GetMD5('bb'));

Commit;

Select Test_MD5.FN_CheckUser('a','aa') From Dual;

Select Test_MD5.FN_CheckUser('a','bb') From Dual;

注:对MD5编码的比较,可以不需要经过Utl_Raw.Cast_To_Raw转换。此处使用Utl_Raw.Cast_To_Raw的目的,是为了调试方便,同时多提供一个知识点。

以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

mysql 用户密码md5_使用MD5编码实现数据库用户密码字段的加密相关推荐

  1. MD5应用于数据库中密码加密

    最近接触网络安全方面的知识,把好的整理下: 登录Web系统时通常都采用用户名和密码的形式,如果这样的数据以明码的方式放在数据库中的话无疑会给别有用心的人以可趁之机,所以采取一定的防范措施是必要的. 现 ...

  2. 用户数据表设计借鉴 浅谈数据库用户表结构设计,第三方登录 基于 Token 的身份验证

    最近对用户数据表的设计比较感兴趣,看到了两篇比较好的文章. 浅谈数据库用户表结构设计,第三方登录 转载于: https://www.cnblogs.com/jiqing9006/p/5937733.h ...

  3. 修改 数据库服务器 密码是什么原因,怎么改数据库服务器密码是什么原因

    怎么改数据库服务器密码是什么原因 内容精选 换一换 用户购买DDM实例后,可以使用Navicat等客户端连接DDM实例,也可以使用CLI或JDBC驱动连接DDM实例中的目标逻辑库.本章节指导用户如何连 ...

  4. mysql面向对象例子_PHP 面向对象实例:获取数据库用户数据

    先写一个数据库配置文件如下: db_config.php // 数据库配置文件, db_config.php $db_server = "localhost"; $db_user ...

  5. 揪出造成失败用户登录的应用主机名、数据库用户信息

    起因: 利用zabbix部署了密码失败登录的监控,监控方法是每隔一分钟,检查user$表lcount字段,如果发现大于0,说明该用户存在错误密码登录数据库. 为啥要部署这个监控呢? 1).如果启用默认 ...

  6. zabbix mysql 密码_zabbix小结(十二)zabbix密码修改

    关于zabbix 的用户密码的修改分两种情况,一种具有管理员权限,而且知道原密码,直接在web界面上进行更改:另一种情况是,管理员密码忘记,无法进行权限认证进入web界面的情况. 一.正常更改用户密码 ...

  7. MySQL(3)数据库用户管理

    文章目录 一.用户管理 1.1 新建用户 1.2 查看用户信息 1.3 重命名用户 1.4 删除用户 1.5 修改当前登录用户密码 1.6 修改其他用户密码 1.7 忘记 root 密码的解决办法 二 ...

  8. MySQL数据库用户管理

    文章目录 引言 一.数据表操作 1.克隆表 2.清空表 3.创建临时表 二.用户管理 1.新建用户 2.查看用户信息 3.重命名用户 4. 删除用户 5.修改当前登录用户密码 6.修改其他用户密码 7 ...

  9. Serv-U数据库用户

    安装环境: ODBC 32位,5.3unicodeServ-U Windows-v15.1.2MySql 5.7.21(WAMP安装)操作系统 Windows 10 / Windows Server ...

最新文章

  1. EPSON机器人的以太网通讯简单总结
  2. MySQL5.7 - 基于GTID复制模式搭建主从复制
  3. 单调有界数列一定有极限
  4. java 中的vector_详解Java中的Vector
  5. 接口方法和映射器的statement id 是怎么绑定起来的?
  6. swift5 字符串格式化保留2 位,缺0自动补0
  7. HttpURLConnection, Android访问网络,实用demo
  8. centos6.7环境下kvm虚拟机之virt-install和virsh及virt-manager工具的使用
  9. Enyim.Caching 客户端配置及示例
  10. Sublime Text3搭建HTML环境
  11. 小学计算机图形组合教案,小学三年级信息技术下册组合图形名师公开课优质教案人教版...
  12. java邮箱和手机发送链接和验证码_java发送邮箱验证码
  13. 数据清洗Chap4——dataframe操作
  14. 圈粉无数!被称为B站“新垣结衣”的UP主,如何收获Z世代年轻人的喜爱?
  15. CEVA-DSP构成
  16. 简单的把cad怎么转换成pdf格式呢?
  17. android 九宫格封装,Android 实现九宫格、点击图片放大全屏浏览等
  18. 神经网络训练常见坑-新手如何优化调整训练神经网络
  19. 【玩转Linux】Linux安装宝塔面板
  20. HTML5商业解决方案公司网页模板

热门文章

  1. 零基础入门深度学习(7) - 递归神经网络
  2. 成交量与股价的关系图解
  3. git对指定commitid 打tag_git 回退版本到之前提交的tag或commit内容代码
  4. tensorflow越跑越慢_tensorflow sess.run()越来越慢的原因分析及其解决方法
  5. linux下生成静态库和动态库
  6. leetcode —— 909. 蛇梯棋
  7. PCA和线性回归之间的关系如何?
  8. 改善深层神经网络:超参数调整、正则化以及优化——2.1 Mini-batch梯度下降
  9. Python 列表推导 、生成器表达式与声明式编程
  10. pandas isnull函数检查数据是否有缺失