`
JYLike97
  • 浏览: 22935 次
  • 性别: Icon_minigender_1
  • 来自: 四川
文章分类
社区版块
存档分类
最新评论

个人总结验证登录的存储过程(oracle9.0.0.1)

阅读更多
[size=18][/size]
参加了一个学校的商业项目,项目周期历时十五天,虽然不长但是确实学到很多东西。同时终于有机会接触到oracle的DBMS觉得他正事态牛了~~~~~~~
这个项目是个酒店管理系统,
操作系统是WIN2003,
数据层实用的JSP+servlet,
数据库是oracle9.0.0.1.
学到太多东西需要总结,终于明白学习知识与学习能力的不同。
实际项目中是没有时间让你去慢慢摸索的,要求的是快速,高效的开发。
方法,理念也学到很多,但是技术是要总结的。
这次用的是包开发,将n个作用类存储过程放在同一个包内~~~~~~~
包开发的好处是,将接口统一,减少了访问数据库的频率,使系统运行效率有效提高
下面是一个验证用户登陆的存储过程
  --登录
  procedure     login(p_username in emsuser.username%type,
                      p_password in varchar2,
                      p_result   out number) as
v_password raw(128);
begin
p_result := -1;
   v_password:=emsencry(UPPER(trim(P_PASSWORD)));
    SELECT  /*+Rule*/
    COUNT(USERID) INTO p_result
     FROM EMSUSER
      WHERE UPPER(trim(USERNAME))=UPPER(trim(p_username))
        AND upper(trim(PASSWORD))=upper(trim(v_password))
        AND VALID=0;
  IF P_RESULT>0 THEN
       SELECT  /*+Rule*/
       ROLEID INTO p_result
        FROM EMSUSER
         WHERE UPPER(trim(USERNAME))=UPPER(trim(p_username))
           AND UPPER(trim(PASSWORD))=upper(trim(v_password))
           AND VALID=0;
  ELSE
P_RESULT:=-1;
  END IF;

end login; 

上面用到的128位md5加密算法是在本站上找到的。
也谢谢作者。算法如下
FUNCTION EMSENCRY (input_string IN VARCHAR2)--加密算法
RETURN VARCHAR2
IS
raw_input RAW (128):= UTL_RAW.cast_to_raw (input_string);
decrypted_raw RAW (2048);
error_in_input_buffer_length EXCEPTION;
BEGIN
DBMS_OBFUSCATION_TOOLKIT.md5 (input => raw_input,
checksum => decrypted_raw
);
RETURN LOWER (RAWTOHEX (decrypted_raw));
END;
分享到:
评论

相关推荐

    oracle 11.2.0.1的最后PSU补丁(11.2.0.1.6):p12419378_112010_Linux-x86-64.zip

    11.2.0.1是Oracle数据库的一个重要版本,而PSU(Patch Set Update)是Oracle公司定期发布的一种重要补丁,用于解决已知问题、提升性能和增强安全性。PSU 11.2.0.1.6是针对11.2.0.1版本的最后一个PSU,包含了自前一个...

    适配oracle11.2.0.1版本的oci.zip

    适配oracle11.2.0.1版本的oci

    oracle10.2.0.1升级到10.2.0.4

    Oracle 10.2.0.1 升级到 10.2.0.4 是一个复杂的过程,需要遵循特定的步骤来确保升级的成功。在这个过程中,我们需要注意一些关键的步骤和注意事项,以避免可能出现的问题。 首先,我们需要了解 Oracle 10.2.0.1 和 ...

    Oracle 11.2.0.4 迁移到Oracle 12.2.0.1

    在 Oracle 11.2.0.4 迁移到 Oracle 12.2.0.1 的过程中,需要遵循以下步骤: 1. 创建新的 PDB:在搭建好的 12c 环境中创建一个新的 PDB,创建时保证 CDB 的字符集为 AL32UTF8,PDB 的字符集保证跟原库一样。查询原库...

    oci.dll(版本:oracle 11.2.0.1)

    oci.dll是Oracle数据库系统中的一个重要组件,它是Oracle Call Interface(OCI)的一部分,版本为11.2.0.1。OCI是Oracle公司提供的一种应用程序编程接口(API),它允许开发者在各种操作系统上编写C语言程序,以与...

    oracle-jdbc-12.2.0.1.zip

    在Oracle 12c版本中,12.2.0.1是其中一个重要的发行版,它提供了对最新Oracle数据库特性的支持,同时也增强了性能和稳定性。Oracle JDBC驱动主要有四种类型: Thin、 Thick、JDBC-ODBC Bridge和Universal Driver,...

    Oracle 12c 12.2.0.1 JavaVM补丁12.2.0.1.180717

    Oracle 12c 12.2.0.1 JavaVM补丁for Linux x64 Patch 27923353 - Oracle JavaVM Component Release Update 12.2.0.1.180717

    oracle 11.2.0.1 CVE-2012-1675 补丁:p12880299_112010_Linux-x86-64.zip

    Oracle 11.2.0.1 CVE-2012-1675 补丁:p12880299_112010_Linux-x86-64.zip 是一个针对Oracle数据库系统的重要安全更新。这个补丁主要解决了一个在Oracle 11.2.0.1版本中的严重安全漏洞,该漏洞被标记为CVE-2012-1675...

    Oracle OPatch 12.2.0.1.39

    Oracle OPatch 12.2.0.1.39 是一个重要的软件更新工具,专门用于处理基于Oracle Universal Installer (OUI) 的Oracle Home环境。这个版本的OPatch旨在提高Oracle产品的稳定性和性能,同时也解决了之前版本可能存在的...

    oracle12c-12.2.0.1 64位 for windows 服务端

    ### Oracle 12c 12.2.0.1 64位 for Windows 服务端 #### 一、Oracle 12c简介 Oracle 12c是Oracle公司发布的一个重要的数据库版本,其中“c”代表“Cloud”,强调了该版本在云计算环境中的应用和支持。Oracle 12c ...

    Oracle 12.2.0.1配置Data Gaurd

    Oracle 12.2.0.1 配置 Data Guard Oracle 12.2.0.1 配置 Data Guard 是一种高可用性解决方案,旨在确保数据库的可用性和数据的一致性。在这种解决方案中,备机环境需要准备好,包括操作系统、文件系统和数据库软件...

    Oracle 11.2.0.1 winx64.txt

    Oracle 11.2.0.1 win x64 安装包磁链,亲测可用,直接复制到迅雷里即可下载,有会员速度更佳。

    快速创建Oracle12.2.0.1镜像及plsqldev1207x64官方安装包

    Oracle镜像文件太大! 可分两步创建Oracle镜像: 1、创建Oracle基础镜像, 创建基础镜像时需要下载很多依赖包。可直接拉取:docker pull estc/base:v1.0 2、根据基础镜像和Oralce安装包, 没有网络环境也能快速创建...

    Red Hat Enterprise Linux 5安装Oracle10.2.0.1笔记

    Red Hat Enterprise Linux 5安装Oracle10.2.0.1笔记

    ORACLE 10.2.0.1 RAC for RedHat AS4 安装(详解)

    《ORACLE 10.2.0.1 RAC for RedHat AS4 安装详解》 本指南详细阐述了如何在Red Hat Enterprise Linux AS 4 Update 2 X86_64环境下安装Oracle 10.2.0.1 Real Application Clusters (RAC)。整个过程分为两大部分:...

    oracle Opatch 12.2.0.1

    总结来说,Oracle Opatch 12.2.0.1是Oracle数据库管理中不可或缺的工具,它使得补丁管理和维护变得更加高效和可靠。通过理解其功能、使用方法以及版本特点,数据库管理员可以更好地维护Oracle环境的健康和安全。

    PL_SQL_Developer9.0.0.1601破解版

    PL_SQL_Developer9.0.0.1601 破解版 1、解压后点击【plsqldev900】安装;(建议不要安装在默认的C:\Program Files (x86)目录下,否则会报错,原因是不能解析这个带()的路径) 2、然后解压CRACK,把里面的plsqldev....

    oracle11.2.0.1升级11.2.0.3

    在这个场景中,我们讨论的是将Oracle 11.2.0.1版本升级到11.2.0.3的过程,这是一个常规的数据库软件更新。Oracle 11g是Oracle数据库的第11个主要版本,提供了许多增强功能和修复了早期版本中的问题。 首先,升级...

    SpingBoot整合oracle的ojdbc8-12.2.0.1.jar

    以上就是Spring Boot整合Oracle数据库的基本过程,其中ojdbc8-12.2.0.1.jar驱动包是关键组件,它确保了Java应用程序与Oracle数据库的通信。在实际项目中,你可能还需要处理事务管理、连接池配置、异常处理等更复杂的...

Global site tag (gtag.js) - Google Analytics