试过了不行。触发器主体如下:其中表名和关键字冲突的是“interface”Declare 
ls_menuid   VarChar2(32);
ls_windowid VarChar2(32);--角色菜单删除的同时删除角色菜单按钮。
Begin
  ls_menuid := :old.menuid;
  select interfaceid 
  into ls_windowid
  from "interface"
  where menuid = ls_menuid;
  delete from role_button
  where windowid = ls_menuid; 
End;

解决方案 »

  1.   

    修正:Declare 
    ls_menuid   VarChar2(32);
    ls_windowid VarChar2(32);--角色菜单删除的同时删除角色菜单按钮。
    Begin
      ls_menuid := :old.menuid;
      select interfaceid 
      into ls_windowid
      from "interface"
      where menuid = ls_menuid;
      delete from role_button
      where windowid = ls_windowid; 
    End;
      

  2.   

    win2000+oracle 81610:36:11 SQL> select * from interface;COL1       COL2
    ---------- ----------
    A          aaa
    A          aab
    A          aac
    B          bba
    B          bbb
    B          bbc
    B          bbd
    C          ccc已选择8行。已用时间:  00: 00: 00.47
    10:37:43 SQL> set serveroutput on;
    10:37:59 SQL> declare
    10:38:02   2  v_str varchar2(10);
    10:38:02   3  begin
    10:38:02   4  select col2 into v_str from interface where col1='B' and rownum=1;
    10:38:03   5  dbms_output.put_line(v_str);
    10:38:03   6  end;
    10:38:03   7  /
    bbaPL/SQL 过程已成功完成。已用时间:  00: 00: 00.62
    10:38:03 SQL> 
    经测试没有问题。
      

  3.   

    把错误信息贴出来
    show error;
      

  4.   

    在哪儿找错误信息?不好意思,我oracle不熟。
      

  5.   

    奇怪,我在ORACLE中删除能成功运行触发器。
      

  6.   

    在oracle中执行可以删除的话,触发器就没问题./