Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: How to prevent deletes when DELETE ANY TABLE granted?

Re: How to prevent deletes when DELETE ANY TABLE granted?

From: Stephen R. Egesdahl <stephen.egesdahl_at_nike.com>
Date: 1996/12/13
Message-ID: <32B1DC0A.2121@nike.com>#1/1

John Verbil wrote:
>
> Todd Verstraten wrote:
> >
>
> "snip"
>
> 1. You cannot to TRUNCATEs in PL/SQL, only SQL*Plus (at least on 7.2.3)
>
>

-- 

This is a way to do truncate from PL/SQL, I can't remember where I got
this from but it has proved to be very useful:


PROCEDURE truncate_table (table_name IN VARCHAR2) AS
   cid INTEGER;
BEGIN
   /* Open new cursor and return cursor ID. */
   cid := dbms_sql.open_cursor;
   /* Parse and immediately execute dynamic SQL statement built by
      concatenating table name to TRUNCATE TABLE command. */
   dbms_sql.parse(cid, 'TRUNCATE TABLE ' || table_name, dbms_sql.v7);
   /* Close cursor. */
   dbms_sql.close_cursor(cid);
EXCEPTION
   /* If an exception is raised, close cursor before exiting. */
   WHEN OTHERS THEN
      dbms_sql.close_cursor(cid);
      RAISE;  -- reraise the exception
END truncate_table;


================================================================
Stephen R. Egesdahl             email: stephen.egesdahl_at_nike.com
Senior Oracle DBA/DA            phone: (503)671-NIKE
Nike, Inc.                      fax  : (503)671-6300
One Bowerman Drive           mailstop: NRC-1
Beaverton, OR 97005
================================================================
The opinions expressed are my own and do not necessarily reflect
those of Nike, Inc.
================================================================
Received on Fri Dec 13 1996 - 00:00:00 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US