我只要限制該table不能刪除行,其他的table還可以,請問怎樣設置?

解决方案 »

  1.   

    那要每一张表都设置,麻烦,你不如吧“限制該table”放到另外一个表空间里面
    然后给该用户授权
      

  2.   

    grant insert on tbname to user;
      

  3.   

    另外建一个新用户,然后只授Insert的权限给新用户
    grant insert on tbname to 新用户;
      

  4.   

    觸發器就可以了
    在表的刪除事件上觸發就可以了。
    --example
    CREATE OR REPLACE TRIGGER TRI_NO_DELETE
           BEFORE DELETE ON YOUR_TABLE
           FOR    EACH ROW
    DECLARE
           I NUMBER(10);
    BEGIN
           IF DELETEING THEN
              RAISE_APPLICATION_ERROR(-20007,'YOU CAN NOT DELETE THIS TABLE!'||SQLERRM(SQLCODE));
     
           END IF;
    END;
      

  5.   

    baojianjun(包子) 说的有道理
      

  6.   

    也可以那一个视图啊!!视图只有INSERT的权限!!!
      

  7.   

    觸發器就可以了
    在表的刪除事件上觸發就可以了。
    --example
    CREATE OR REPLACE TRIGGER TRI_NO_DELETE
           BEFORE DELETE ON YOUR_TABLE
           FOR    EACH ROW
    DECLARE
           I NUMBER(10);
    BEGIN
           IF DELETEING THEN
              RAISE_APPLICATION_ERROR(-20007,'YOU CAN NOT DELETE THIS TABLE!'||SQLERRM(SQLCODE));
     
           END IF;
    END;我觉得还是这样比较好一点!直接!
      

  8.   

    修改用户权限,只有insert权限,可以在dba statio中改
      

  9.   

    to  zwj0712(阿张):如果只是对单表映射的视图,而不是多表的联合视图,还是可以做INSERT操作的。
      

  10.   

    更正:如果只是对单表映射的视图,而是多表的联合视图,还是可以做INSERT操作的。
      

  11.   

    更正:如果只是对单表映射的视图,而不是多表的联合视图,还是可以做INSERT操作的。
    呵呵....
      

  12.   

    一个通过权限
    另一种方法是通过triger也行