客户的服务器上,有一系统函数,wmsys.wm_concat(合并列字符串)不小心被客户误删除。
该函数是在 wmsys账号下自带的函数。
我想了两个办法,但仍未能解决。
1。我把系统这个函数,到客户处去重新生成,但却出现编辑错误,具体原因不明。
create or replace function wmsys.wm_concat wrapped
a000000
1
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
8
58 96
+CuW1MAfZPVR6NOnXKVmXY2o9pswg8eZgcfLCNL+XhZy8K7/cgzcVrPnfMPnx3TAM7h0ZSXD
j57Asr2ym9ZtFldFmFu+RdpAU8VGORKSvtVG+DmAOR4C+NTa+Pit2kDbEpI5zhZUgqameSkE
DQ==2. 想导入该用户wmsys下的所有对象,然后去覆盖用户那边的数据。但提示:即将导出指定的用户...
EXP-00010: WMSYS 是无效的用户名
导出成功终止, 但出现警告。现在我是没招了,所以上来请各位给一个解决方法。

解决方案 »

  1.   


    CREATE OR REPLACE function WMSYS.wm_concat wrapped
    a000000
    1
    abcd
    abcd
    abcd
    abcd
    abcd
    abcd
    abcd
    abcd
    abcd
    abcd
    abcd
    abcd
    abcd
    abcd
    abcd
    8
    58 96
    +CuW1MAfZPVR6NOnXKVmXY2o9pswg8eZgcfLCNL+XhZy8K7/cgzcVrPnfMPnx3TAM7h0ZSXD
    j57Asr2ym9ZtFldFmFu+RdpAU8VGORKSvtVG+DmAOR4C+NTa+Pit2kDbEpI5zhZUgqameSkE
    DQ==
    /这个创建函数是没有问题的, 楼主在试试. 楼主是在SQLPLUS 中执行的,还是在哪? 如果是Toad的话,要以脚本方式来运行,或者按F5 
      

  2.   


    用sqlplus 执行是可以,但有编辑错误,等于这个函数还是不能用。
      

  3.   

    用sys 账户登入的,创建后,有这个提示Warning: Function created with compilation errors
      

  4.   

    C:\Documents and Settings\user.HQ-TEXT>sqlplus /nologSQL*Plus: Release 10.2.0.1.0 - Production on 星期二 10月 27 11:32:50 2009Copyright (c) 1982, 2005, Oracle.  All rights reserved.SQL> conn sys/admin as sysdba;
    已连接。
    SQL> CREATE OR REPLACE function WMSYS.wm_concat wrapped
      2  a000000
      3  1
      4  abcd
      5  abcd
      6  abcd
      7  abcd
      8  abcd
      9  abcd
     10  abcd
     11  abcd
     12  abcd
     13  abcd
     14  abcd
     15  abcd
     16  abcd
     17  abcd
     18  abcd
     19  8
     20  58 96
     21  +CuW1MAfZPVR6NOnXKVmXY2o9pswg8eZgcfLCNL+XhZy8K7/cgzcVrPnfMPnx3TAM7h0ZSXD
     22  j57Asr2ym9ZtFldFmFu+RdpAU8VGORKSvtVG+DmAOR4C+NTa+Pit2kDbEpI5zhZUgqameSkE
     23  DQ==
     24  /函数已创建。SQL>
    楼主copy代码的过程中没有问题吧。  这个最好用TOAD来,因为可以调试运行,知道哪一步错了。还可以修改。楼主换个工具试试?
      

  5.   

    pl/sql developer工具也可以调试,看看具体错误是什么
      

  6.   


    cosio 提醒是对的
    我在本地用sys账号,出了上面那个提示。
    我登入服务器后,用sys 在sqlplus对执行,就成功了。
    好了,问题解决,谢谢各位。
      

  7.   


    楼主登陆sqlplus之前指定ORACLE_SID没有?