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

Home -> Community -> Mailing Lists -> Oracle-L -> RE: Logon Trigger on schema

RE: Logon Trigger on schema

From: Yasin Baskan <yasbs_at_kocbank.com.tr>
Date: Tue, 11 Apr 2006 13:40:17 +0300
Message-ID: <083667B535F3464CA0DD0D1DAFA4E376092E58DD@camexc1.kfs.local>

Please specify the schema name as follows. This solves the issue.

SQL> UPDATE T set NUM = 2;
UPDATE T set NUM = 2
*

ERROR at line 1:
ORA-01502: index 'SCOTT.I' or partition of such index is in unusable state

SQL> begin
  2 EXECUTE IMMEDIATE 'ALTER SESSION SET SKIP_UNUSABLE_INDEXES=TRUE';   3 end;
  4 /

PL/SQL procedure successfully completed.

SQL> UPDATE T set NUM = 2;

1 row updated.

SQL> CREATE OR REPLACE TRIGGER FC_ENABLE_PARALLEL_DML after LOGON ON SCOTT.SCHEMA
  BEGIN
  EXECUTE IMMEDIATE 'ALTER SESSION ENABLE PARALLEL DML';   EXECUTE IMMEDIATE 'ALTER SESSION SET SKIP_UNUSABLE_INDEXES=TRUE';   END;
/ 2 3 4 5 6 7

Trigger created.

SQL> disc
Disconnected from Oracle9i Enterprise Edition Release 9.2.0.7.0 - 64bit Production With the Partitioning option
JServer Release 9.2.0.7.0 - Production
SQL> conn scott
Enter password:
Connected.
SQL> UPDATE T set NUM = 2;

1 row updated.

-----Original Message-----
From: oracle-l-bounce_at_freelists.org [mailto:oracle-l-bounce_at_freelists.org] On Behalf Of GUILLAUMIN Bert Ext ROSI/SI CLIENT Sent: Tuesday, April 11, 2006 11:53 AM
To: 'Oracle-L Freelists'
Subject: RE: Logon Trigger on schema

-----Message d'origine-----
De : Bertrand Guillaumin [mailto:bguillaumin.ext_at_francetelecom.com] Envoyé : jeudi 6 avril 2006 15:29
À : 'Oracle-L Freelists'
Objet : Logon Trigger on schema

Hi! I'm trying to use a logon trigger on a schema so that it will systematically have the skip_unusable_indexes set to true and parallel DML enabled(I have to use an app which sometimes disconnects and reconnects without any visible reason).

So I wrote this trigger :

SQL> CREATE OR REPLACE TRIGGER FC_ENABLE_PARALLEL_DML after LOGON ON SCHEMA   2 BEGIN
  3 EXECUTE IMMEDIATE 'ALTER SESSION ENABLE PARALLEL DML';   4 EXECUTE IMMEDIATE 'ALTER SESSION SET SKIP_UNUSABLE_INDEXES=TRUE';   5 END;
  6 /

DÚclencheur crÚÚ.

and created a table for testing purpose : SQL> CREATe TABLE T AS SELECT 1 as num FROM DUAL   2 /

Table crÚÚe.

SQL> CREATE INDEX I ON T(NUM)
  2 /

Index crÚÚ.

SQL> ALTER INDEX I UNUSABLE
  2 /

Index modifiÚ.

But the problem is, when I disconnect and reconnect via sqlplus and try to update an indexed column with the same user :

SQL> UPDATE T set NUM = 2;
UPDATE T set NUM = 2
*

ERREUR Ó la ligne 1 :
ORA-01502: index 'CP20DEV2.I' or partition is unusable

I'm working on 9.2.0.4.
Any hint or advice appreciated.

Regards,
Bertrand Guillaumin



Ce message et toutes les pieces jointes (ci-apres le "message") sont confidentiels et etablis a l'intention exclusive de ses destinataires.
Toute utilisation ou diffusion non autorisee est interdite. Tout message electronique est susceptible d'alteration. Le Groupe France Telecom decline toute responsabilite au titre de ce message s'il a ete altere, deforme ou falsifie. Si vous n'etes pas destinataire de ce message, merci de le detruire immediatement et d'avertir l'expediteur.

This message and any attachments (the "message") are confidential and intended solely for the addressees. Any unauthorised use or dissemination is prohibited.
Messages are susceptible to alteration. France Telecom Group shall not be liable for the message if altered, changed or falsified.
If you are not the intended addressee of this message, please cancel it immediately and inform the sender.
--
http://www.freelists.org/webpage/oracle-l





Bu mesaj ve onunla iletilen tum ekler gonderildigi kisi ya da kuruma ozel ve Bankalar Kanunu geregince, gizlilik yukumlulugu tasiyor olabilir. Bu mesaj, hicbir sekilde, herhangi bir amac icin cogaltilamaz, yayinlanamaz ve para karsiligi satilamaz; mesajin yetkili alicisi veya alicisina iletmekten sorumlu kisi degilseniz, mesaj icerigini ya da eklerini kopyalamayiniz, yayinlamayiniz, baska kisilere yonlendirmeyiniz ve mesaji gonderen kisiyi derhal uyararak bu mesaji siliniz. Bu mesajin iceriginde ya da eklerinde yer alan bilgilerin dogrulugu, butunlugu ve guncelligi Bankamiz tarafindan garanti edilmemektedir ve bilinen viruslere karsi kontrolleri yapilmis olarak yollanan mesajin sisteminizde yaratabilecegi zararlardan Bankamiz sorumlu tutulamaz.

This message and the files attached to it are under the privacy liability in accordance with the Banking Law and confidential to the use of the individual or entity to whom they are addressed. This message cannot be copied, disclosed or sold monetary consideration for any purpose. If you are not the intended recipient of this message, you should not copy, distribute, disclose or forward the information that exists in the content and in the attachments of this message; please notify the sender immediately and delete all copies of this message. Our Bank does not warrant the accuracy, integrity and currency of the information transmitted with this message. This message has been detected for all known computer viruses thence our Bank is not liable for the occurrence of any system corruption caused by this message
--
http://www.freelists.org/webpage/oracle-l
Received on Tue Apr 11 2006 - 05:40:17 CDT

Original text of this message

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