c#写了个动态库,用到 drop user "AA" cascade;
删除后,程序测试连接不通,sqlplus测试无此用户。
BUG:Client 控制台竟然还可以用 AA用户登录!
求解!多谢。

解决方案 »

  1.   

    CLIENT是删除之前就登陆的?
    这样的话SESSION还连接中
      

  2.   

    关掉Client,再重新登录后,用户还可以登录吗
      

  3.   


    尝试以下方法:正在连接的用户不能删除,确实要删除的话,如下 
    1、select sid,serial#,username from v$session where user='USERNAME'; 
    2、alter system kill session 'sid,serial#'; 
    3、drop user username cascade;  ------------------------------------------------------------------------------
    Blog: http://blog.csdn.net/tianlesoftware
    网上资源: http://tianlesoftware.download.csdn.net
    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
    Q Q 群:62697716 
      

  4.   

    仿照4#的方法  确认你的user是否被删除
      

  5.   

    正在连接中的用户应该是删除不了的你在client端随便执行几条语句试试
    说不定就会提示你已经不再连接了
      

  6.   

    c#中登录用户是DBA,每次都是把控制台等程序关掉重启。我用的DBA登录,删除的是其它用户,用删除了的用户仍然可以登控制台。直接在SQLPLUS里面测试,效果一样。期待解决,回答晚了,不好意思。
      

  7.   

    我用的DBA登录,删除的是其它用户,用删除了的用户仍然可以登控制台。得出结论,你的程序没有删除掉用户!!!程序有问题
      

  8.   

    哦,是用DBA登录,你可以把你测试成功的SQLPLUS语句贴出来,我拿去测试,以及赋予的权限同时贴出来。ORACLE可以套用虚拟机吗?正在测试中...
      

  9.   

    附语句,网上到处有,eagle和陈吉平的也是这样写的。
    1、drop user "AA" cascade;
    2、create user "AA" profile "DEFAULT" IDENTIFIED BY "aa" default tablespace "TEST" account unlock;
    grant "connect" to "AA";
    grant "DBA" to "AA";
    grant "resource" to "AA";
    grant "exp_full_database" to "AA";
    grant "imp_full_database" to "AA";大家可以直接在SQLPLUS下测试,...
      

  10.   

    drop user "AA" cascade; 
    commit;
      

  11.   

    可能不是SQL语句的问题
    是你C#程序的问题可以跟踪一下
    当在程序中删除用户后
    SQLPLUS中以DBA身份登录再到数据库中去查询该用户是否还存在select username from dba_users;
      

  12.   

    BUG:Client 控制台竟然还可以用 AA用户登录! 登录语句是什么?as sysdba?
      

  13.   


    恩 有可能是加了as sysdba的原因楼主登录后在SQLPLUS里使用show user看看当前登录的究竟是已经被删除的'AA'还是SYS
      

  14.   

    删除以后,SQLPLUS里面看不到删除的用户了。
    已经赋予删除掉的用户DBA权限了。
      

  15.   

    run/oemapp.bat console/username="aa"
      

  16.   

    如果你是下面这种方法登陆的话,在不做特殊设置的情况下,删不删A用户对登陆没有影响。C:\Documents and Settings\admin>sqlplus asdasd/asdasd as sysdbaSQL*Plus: Release 10.1.0.2.0 - Production on 星期一 12月 7 12:13:42 2009Copyright (c) 1982, 2004, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
    With the Partitioning, OLAP and Data Mining options
    Session altered.[SYS@ora10gr1#2009-12-07/12:13:43] SQL>exit
    Disconnected from Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
    With the Partitioning, OLAP and Data Mining optionsC:\Documents and Settings\admin>sqlplus 123/sd23 as sysdbaSQL*Plus: Release 10.1.0.2.0 - Production on 星期一 12月 7 12:13:55 2009Copyright (c) 1982, 2004, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
    With the Partitioning, OLAP and Data Mining options
    Session altered.[SYS@ora10gr1#2009-12-07/12:13:55] SQL>
      

  17.   

    就像楼上的朋友说的一样
    注意不要加as sysdba
    要不然总是可以登录上去的
      

  18.   

    解释:run/oemapp.bat console/username="aa" 
    运行/oemapp.bat console/用户名aa
    命令行启动进程为什么sysdba有这么大的影响?  对数据进行操作 DBA 是必须的权限撒 怎么办?
      

  19.   

    如果加了as sysdba的话系统默认是以SYS用户登录的
    你可以登录进去以后使用show user命令查看当前登录用户到底是谁DBA权限不一定需要以as sysdba登录的
    二者还是有些区别的
      

  20.   

    控制台可以show user?
    SQLPLUS已经登录不了了...
      

  21.   

    自己被Oracle搞混掉了,登录的时候就看到用哪个登录的.
    今天用虚拟机做了个实验,虚拟出两个完全一样的03环境.
    用PCA的冷备份数据恢复PCB.可以跑起来了!兴奋!
    但是报了一个错误,表空间和数据文件在EM打不开.
    高手指点,谢了.ORA-01187:由于验证测试失败而无法从文件201读取
    ORA-01110:数据文件201:'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP01.DBF'
      

  22.   

    高手救援:
    1、如何创建两个完全一样的库
    2、我的电脑32位,服务器64位,写的程序跑不了!SOS