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: why administrator refuse to give permission on PLUSTRACE

Re: why administrator refuse to give permission on PLUSTRACE

From: DA Morgan <damorgan_at_psoug.org>
Date: Fri, 02 Nov 2007 23:30:48 -0700
Message-ID: <1194071445.120813@bubbleator.drizzle.com>


Hasta wrote:
> In article <em3ni3576un5bov34b5hgm2u34t8gr4pa1_at_4ax.com>,
> sybrandb_at_hccnet.nl says...

>> On 2 Nov 2007 09:47:04 -0500, Galen Boyer <galen_boyer_at_yahoo.com>
>> wrote:
>>
>>>> If there is a situation where the developer is truly more qualified
>>>> than the DBA ... 
>>> Daniel, sadly, this is more normally the case.
>> Really?
>> So why do I always have to deal with fully unqualified, not to say
>> completely incompetent developers?
>> Do these rarities actually exist?
>>

>
> Are you called in to solve performance problems ?
>
> If so, one hypothesis is that you dont meet good programmers,
> because they solve these problems by themselves
>
> IOW why do you think you deal with a representative sample ?

I don't think the issue is, or has ever been, good or bad developers. The question has been developers with sufficient skill that you grant the DBA role to them and turn them loose on a production database. Again ... look at the subject of this thread ... above.

But lets give you an opportunity to test those developers around you to see how good they really are.

What would you do if the stored procedure "test" was identified as the issue?

CREATE TABLE parent (
part_num NUMBER,
part_name VARCHAR2(15));

CREATE TABLE child AS
SELECT *
FROM parent;

DECLARE
  j PLS_INTEGER := 1;
  k parent.part_name%TYPE := 'Transducer'; BEGIN
   FOR i IN 1 .. 200000
   LOOP

     SELECT DECODE(k, 'Transducer', 'Rectifier',
     'Rectifier', 'Capacitor',
     'Capacitor', 'Knob',
     'Knob', 'Chassis',
     'Chassis', 'Transducer')
     INTO k
     FROM dual;

     INSERT INTO parent VALUES (j+i, k);
   END LOOP;
   COMMIT;
END;
/

CREATE OR REPLACE PROCEDURE test IS
BEGIN
   FOR r IN (SELECT * FROM parent)
   LOOP

     r.part_num := r.part_num * 10;
     INSERT INTO child
     VALUES
     (r.part_num, r.part_name);

   END LOOP;
   COMMIT;
END test;
/

And no Hasta it is not my intent here to intimate that you, personally, are incompetent. But if you gave this challenge to your co-workers how many of them do you think could identify the issue and come up with one, or more, solutions?

-- 
Daniel A. Morgan
University of Washington
damorgan_at_x.washington.edu (replace x with u to respond)
Puget Sound Oracle Users Group
www.psoug.org
Received on Sat Nov 03 2007 - 01:30:48 CDT

Original text of this message

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