• Oracle创建WM_CONCAT函数


    Oracle创建WM_CONCAT函数
    WM_CONCAT这个函数会出错,所以从 11g开始。官方不认可 WM_CONCAT.然后就没这个函数了,
    下面就是创建WM_CONCAT这个函数的步骤

    第一步:

    下载三个文件:owmctab.plb 、 owmaggrs.plb 、 owmaggrb.plb

    第二步:

    用sqlplus登录:CONN SYS/PASS_WORD AS SYSDBA;

    一、忘记除SYS、SYSTEM用户之外的用户的登录密码。
    用SYS (或SYSTEM)用户登录: CONN SYS/PASS_WORD AS SYSDBA;

    使用如下语句修改用户的密码: ALTER USER user_name IDENTIFIED BY "newpass";
    注意:密码不能全是数字。并且不能是数字开头。否则会出现:ORA-00988: 口令缺失或无效

    二、忘记SYS用户,或者是SYSTEM用户的密码。

    如果是忘记SYSTEM用户的密码,可以用SYS用户登录。然后用ALTER USER 命令修改密码:

    CONN SYS/PASS_WORD AS SYSDBA;
    ALTER USER SYSTEM IDENTIFIED BY "newpass";

    如果是忘记SYS用户的密码,可以用SYSTEM用户登录。然后用ALTER USER 命令修改密码。

    CONN SYSTEM/PASS_WORD ;
    ALTER USER SYSTEM IDENTIFIED BY "newpass";

    三、如果SYS,SYSTEM用户的密码都忘记或是丢失。

    可以使用ORAPWD.EXE 工具修改密码。
    开始菜单->运行->输入‘CMD’,打开命令提示符窗口,输入如下命令:
    orapwd file=D:oracle10gdatabasepwdctcsys.ora password=newpass
    这个命令重新生成了数据库的密码文件。密码文件的位置在ORACLE_HOME目录下的database目录下。
    这个密码是修改sys用户的密码。除sys其他用户的密码不会改变。

    第三步:

    上面的三个文件下载后找到路径 前面加“@” 如: SQL> @C:UsersylgDesktoporacleowmaggrb.plb;

    看自己的Oracle是否有这个函数的sql为:
    SELECT * FROM DBA_OBJECTS WHERE OBJECT_NAME LIKE 'WM_CONCAT%';

    select account_status,wmsys.wm_concat(username) from dba_users group by account_status;

    如果没有WM_CONCAT函数的话依次执行:

    @C:UsersylgDesktopowmctab.plb;

    @C:UsersylgDesktopowmaggrs.plb

    @C:UsersylgDesktopowmaggrb.plb

    这样就创建建成功了赶快去试试

    SELECT deptno, wmsys.wm_concat(ename) nameslist
    FROM emp
    GROUP BY deptno
    
  • 相关阅读:
    模板方法设计模式
    单一职责原则
    开闭原则
    uml
    迭代器模式
    观察者模式
    工厂模式
    代理模式
    idea本地Maven仓库不能下载依赖jar包的解决方案
    selenium 使用教程详解-java版本
  • 原文地址:https://www.cnblogs.com/yangliguo/p/7633214.html
Copyright © 2020-2023  润新知