Documente Academic
Documente Profesional
Documente Cultură
Cette F.A.Q. a été réalisée à partir des questions fréquemment posées sur le forum
Oracle de www.developpez.com et de l'expérience personnelle des auteurs. Elle pourra
traiter de tout type de questions portant sur les technologies Oracle.
Nous espérons que cette F.A.Q. saura répondre à un maximum de vos questions. Nous
vous souhaitons une bonne lecture.
L'équipe Oracle de Developpez.
Ont contribué à cette FAQ :
-3-
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
D'ailleurs vous pouvez, si vous êtes l'auteur du message initial, marquer le fil de discussion pour [Délestage]. Ce faisant,
vous améliorerez la lisibilité du forum, vous faciliterez le travail des modérateurs (ils sont bénévoles et ils ont plein de
choses plus passionnantes à faire, comme répondre à une question qui n'a pas déjà été posée).
-4-
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Afin de les aider à trouver une solution plus rapidement, pensez à préciser la version de votre base de données, l'utilitaire
utilisé, le code utilisé et les erreurs que vous avez obtenues.
-5-
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
%ORACLE_HOME\admin\%ORACLE_SID%\pfile
Il existe aussi un fichier init{SID}.ora dans le repertoire %ORACLE_HOME%\dbs mais en règle générale ce fichier
contient juste un paramètre IFILE qui redirige vers le fichier donné au début.
-- Sous Windows
SET ORACLE_HOME=c:\oracle\ora92
-- Sous Windows
SET ORACLE_SID=TATA
-6-
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
TATA
Tous les produits édités par Oracle sont disponibles en version complète et gratuitement sur leur site de
téléchargement.
Néanmoins, seul SQL Developper est gratuit quelles que soient les circonstances. En effet, les autres produits ne sont
disponibles gratuitement qu'à des fins de tests du produit (hors de question de l'utiliser pour tester des développements,
seul le prototypage est autorisé) et d'auto-formation seulement ! Vous pouvez lire la license sur cette page : http://
www.oracle.com/technology/software/htdocs/devlic.html .
Pour tout autre usage professionnel, il faudra vous acquitter d'une license qui dépend de trop nombreux paramètres
pour pouvoir être détaillée ici . Je vous invite donc à aller directement sur le site de vente en ligne Oracle Store pour
vous faire une idée. Évidemment, il est important de vérifier et/ou discuter des conditions tarifaires avec un commercial
Oracle.
A noter également qu'Oracle propose une distribution entièrement gratuite et professionnelle sous l'appellation
d'Oracle Database 10g Express Edition. Cette version limitée intégre la base de données en version 10g, le développement
d'une application ainsi que du reporting.
-7-
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
-8-
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SELECT *
FROM EMP
WHERE ROWNUM <= 10 ;
SELECT *
FROM (SELECT *
FROM EMP
ORDER BY ename)
WHERE ROWNUM <= 10 ;
16 ligne(s) sélectionnée(s).
-9-
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
• les 5 suivants :
- 10 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Ces exemples utilisent la fonction analytique ROW_NUMBER. Cette fonction est très similaire au ROWNUM utilisé
dans le paragraphe précédent mais est appliqué sur le résultat de la requête et pas pendant l'exécution de la requête
elle-même.
Avec ROWNUM, la requête précédente aurait pu s'écrire :
Les fonctions analytiques peuvent sensiblement simplifier les requêtes et éventuellement améliorer leurs performances.
Si on ne veut garder qu'une seule ligne pour chaque ensemble de personnes ayant le même nom et le même prénom, le
choix se faisant de manière arbitraire, on peut utiliser la requête suivante :
delete PERSONNE a
where rowid > (
select min(rowid)
from PERSONNE b
where b.nom = a.nom and
b.prenom = a.prenom
);
Remarque :
- cette requête doit être adaptée si l'une des colonnes nom ou prénom peut être nulle.
- cette requête garde la ligne de rowid minimum parmi l'ensemble des lignes ayant même nom et même prénom.
- 11 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Essayons maintenant de créer une contrainte d'unicité : nous allons obtenir une erreur :
A B
---------- ----------
a 1
b 2
a 5
b 8
- 12 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Fichier
-----------------------
Nomdefichiernonconforme
Fichier
---------------------------
Nom_de_fichier_non_conforme
La fonction remplace tous les '1' par '1' et tous les autres caractères de la chaîne de recherche par le caractère '_'.
• Autre exemple de remplacement de caractères indésirables :
Chaine
-----------
aaaeeeeuuuo
SQL>
La fonction remplace toutes les minuscules accentuées par leurs équivalents non accentués.
Bien évidement, les arguments de la fonction peuvent être des variables :
- 13 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Comment manipuler la partie entière et décimale d'un numérique avec la fonction TRUNC ?
Auteurs : SheikYerbouti ,
TRUNC( valeur, précision ) ;
Cette fonction permet d'effectuer deux types d'action (sur un numérique) :
• Conserver le nombre de décimales souhaitées (précision >= 0)
• Cadrer la partie entière d'un nombre dans une tranche (précision < 0)
SQL> select
2 trunc(12.98764, 5) "+5 dec."
3 ,trunc(12.98764, 4) "+4 dec."
4 ,trunc(12.98764, 3) "+3 dec."
5 ,trunc(12.98764, 2) "+2 dec."
6 ,trunc(12.98764, 1) "+1 dec."
7 ,trunc(12.98764, 0) "+0 dec."
8 from dual ;
SQL> select
2 trunc(1234567,-6) "million"
3 ,trunc(1234567,-5) "cent-mille"
4 ,trunc(1234567,-4) "dix-mille"
5 ,trunc(1234567,-3) "mille"
6 ,trunc(1234567,-2) "cent"
7 ,trunc(1234567,-1) "dix"
8 from dual ;
SQL> DECLARE
2 LN$Num number := 100.95 ;
3 BEGIN
4 DBMS_OUTPUT.PUT_LINE( 'Partie entière : ' || To_char( TRUNC ( LN$Num ) )) ;
5 DBMS_OUTPUT.PUT_LINE( 'Partie décimale : ' || To_char( LN$Num - TRUNC (LN$Num ) ) ) ;
6 END ;
7 /
Partie entière : 100
Partie décimale : ,95
- 14 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Session modifiée.
SQL>
SQL> -- Affichage de la date du jour --
SQL> SELECT SYSDATE "Date du jour" FROM DUAL ;
Date du jour
-------------------
08/10/2004 14:08:48
SQL>
SQL> -- date tronquée au 1er jour de l'année --
SQL> SELECT TRUNC(SYSDATE, 'YEAR') "'YEAR'" FROM DUAL;
'YEAR'
-------------------
01/01/2004 00:00:00
SQL>
SQL> -- date tronquée au 1er jour de l'année ISO--
SQL> SELECT TRUNC(SYSDATE, 'IYYY') "'IYYY'" FROM DUAL;
'IYYY'
-------------------
29/12/2003 00:00:00
SQL>
SQL> -- date tronquée au 1er jour du trimestre --
SQL> SELECT TRUNC(SYSDATE, 'Q') "'Q'" FROM DUAL;
'Q'
-------------------
01/10/2004 00:00:00
SQL>
SQL> -- date tronquée au 1er jour du mois --
SQL> SELECT TRUNC(SYSDATE, 'MONTH') "'MONTH'" FROM DUAL;
'MONTH'
-------------------
01/10/2004 00:00:00
SQL>
SQL> -- date tronquée au 1er jour de la semaine --
SQL> SELECT TRUNC(SYSDATE, 'DAY') "'DAY'" FROM DUAL;
'DAY'
-------------------
- 15 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
04/10/2004 00:00:00
SQL>
SQL> -- jour de la semaine correspondant au jour du 1er jour du mois --
SQL> SELECT TRUNC(SYSDATE, 'W') "'W'" FROM DUAL;
'W'
-------------------
08/10/2004 00:00:00
SQL>
SQL> -- jour de la semaine correspondant au jour du 1er jour de l'année --
SQL> SELECT TRUNC(SYSDATE, 'WW') "'WW'" FROM DUAL;
'WW'
-------------------
07/10/2004 00:00:00
SQL>
SQL> -- jour de la semaine correspondant au jour du 1er jour de l'année ISO --
SQL> SELECT TRUNC(SYSDATE, 'IW') "'IW'" FROM DUAL;
'IW'
-------------------
04/10/2004 00:00:00
SQL>
SQL> -- date tronquée au jour (retire les heures) --
SQL> SELECT TRUNC(SYSDATE, 'DD') "'DD'" FROM DUAL;
'DD'
-------------------
08/10/2004 00:00:00
SQL>
SQL> -- date tronquée à l'heure (retire les minutes) --
SQL> SELECT TRUNC(SYSDATE, 'HH') "'HH'" FROM DUAL;
'HH'
-------------------
08/10/2004 14:00:00
SQL>
SQL> -- date tronquée à la minute (retire les secondes) --
SQL> SELECT TRUNC(SYSDATE, 'MI') "'MI'" FROM DUAL;
'MI'
-------------------
08/10/2004 14:08:00
- 16 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Exemple :
TO_CHAR(SYSDATE,'DD/MM/RRRRDAYDMONTHYEAR')
------------------------------------------------------------------------------------
15/10/2004 Vendredi 5 Octobre Two Thousand Four
- 17 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
C'est pourquoi on ne peut pas utiliser les fonctions SYSDATE ou USER, qui provoquent l'une comme l'autre l'erreur
"ORA-02436: variable de date ou système mal indiquée dans contrainte CHECK".
Pour résumer, une contrainte CHECK ne peut mettre en jeu que les colonnes de la ligne courante, des constantes
éventuellement sous forme de listes, et des fonctions standard déterministes.
Exemples :
'-'||A||'-' '-'||B||'-'
---------------------- ----------------------
-oracle - -oracle-
LENGTH(A) LENGTH(B)
---------- ----------
20 6
Table créée.
Table supprimée.
- 18 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Table créée.
Oracle recommande quand même l'utilisation de VARCHAR2 au lieu de CHAR pour une raison de compatibilité dans
les versions supérieures.
Outre l'utilisation supplémentaire de place, l'utilisation de CHAR en lieu et place de VARCHAR2 augmentera
également la taille de vos index et peut parfois diminuer les performances de recherches de ces derniers !
- 19 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
4, 'SHARE',
5, 'S/ROW-X (SSX)',
6, 'EXCLUSIVE',
TO_CHAR (hk.lmode)
) mode_held,
DECODE (
wk.request,
0, 'None',
1, 'NULL',
2, 'ROW-S (SS)',
3, 'ROW-X (SX)',
4, 'SHARE',
5, 'S/ROW-X (SSX)',
6, 'EXCLUSIVE',
TO_CHAR (wk.request)
) mode_requested,
object_name ,
TO_CHAR (hk.id1) lock_id1,
TO_CHAR (hk.id2) lock_id2
FROM v$lock hk, v$session bs, v$lock wk, v$session ws , V$LOCKED_OBJECT a ,
dba_objects b
WHERE hk.BLOCK = 1
AND hk.lmode != 0
AND hk.lmode != 1
AND wk.request != 0
AND wk.TYPE(+) = hk.TYPE
AND wk.id1(+) = hk.id1
AND wk.id2(+) = hk.id2
AND hk.sid = bs.sid(+)
AND wk.sid = ws.sid(+)
AND a.object_id=b.object_id
AND hk.sid=a.session_id
ORDER BY 1;
Table created.
1 row created.
- 20 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
X Y
---------- ----------
5 -3
1 row updated.
X Y
---------- ----------
-5 0
1 row updated.
X Y
---------- ----------
5 -3
Table altered.
1 row updated.
X Y
---------- ----------
0
jeu d'essais
CREATE TABLE dvp ( a VARCHAR2( 10 ) ) ;
INSERT INTO dvp VALUES (NULL) ;
INSERT INTO dvp VALUES ('DVP') ;
INSERT INTO dvp VALUES ('') ;
COMMIT;
- 21 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
'-'||A
-----------
-
-DVP
-
COUNT(*)
----------
3
COUNT(*)
----------
2
COUNT(*)
----------
0
COUNT(*)
----------
1
COUNT(*)
----------
0
Une solution consiste à utiliser un caractère ou une chaîne de susbsitution, afin que votre applicatif puisse gérer ces
informations de manière distincte. Le plus simple, si c'est possible, est d'utiliser le caractère espace, ce qui donne, si
l'on continue sur l'exemple précédent :
1 ligne créée.
SQL> commit;
Validation effectuée.
COUNT(*)
----------
4
- 22 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
COMMIT;
Sa soeur Temp_Article reçoit un fichier de MAJ à jour des prix, sans clé et pouvant contenir de nouveaux articles :
La commande MERGE va nous servir à faire la MAJ des prix et l'intégration des nouveaux articles en une seule
commande :
- 23 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
5 lignes fusionnées.
Voici la page Oracle sur laquelle vous trouverez toutes les informations utiles à propos de cette commande :
http://download-west.oracle.com/docs/cd/B14117_01/server.101/b10759/statements_9016.htm#SQLRF01606
Use the MERGE statement to select rows from one or more sources for update or insertion into one or more tables. You
can specify conditions to determine whether to update or insert into the target tables.
This statement is a convenient way to combine multiple operations. It lets you avoid multiple INSERT, UPDATE, and
DELETE DML statements.
MERGE is a deterministic statement. That is, you cannot update the same row of the target table multiple times in the
same MERGE statement.
lien : http://download-west.oracle.com/docs/cd/B14117_01/server.101/b10759/statements_9016.htm#SQLRF01606
/*+ REWRITE_OR_ERROR */
Depuis la version 9i, vous pouvez utiliser un pseudo champ LEVEL afin de connaître le niveau de chaque
enregistrement.
En voici un exemple, grâce à une table Catégorie comprenant les champs suivants :
• Une Clé (Id)
- 24 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
• Un Libellé (Libe)
• La clé de la catégorie parent (Id_Parent)
-- Les clés sont attribuées de manière hiérarchique pour plus de clarté, ce qui est bien entendu rarement le cas
INSERT INTO Categorie VALUES ( 1, 'Librairie' , NULL);
INSERT INTO Categorie VALUES ( 11, 'Revue' , 1);
INSERT INTO Categorie VALUES ( 111, 'Quotidien' , 11);
INSERT INTO Categorie VALUES ( 112, 'Hebdomadaire' , 11);
INSERT INTO Categorie VALUES ( 111, 'Mensuel' , 11);
INSERT INTO Categorie VALUES ( 12, 'Roman' , 1);
INSERT INTO Categorie VALUES ( 13, 'Bande Dessinée', 1);
COMMIT;
7 ligne(s) sélectionnée(s).
A partir de la 9i, vous pouvez également utilisez la fonction SYS_CONNECT_BY_PATH (Champ, séparateur), qui
permet de concaténer les différents valeurs du champ spécifié pour connaître le chemin entre l'élément concerné et le
neod racine :
SYS_CONNECT_BY_PATH(LIBE,'-')
------------------------------------------
-Alimentaire
- 25 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
-Alimentaire-Boisson
-Alimentaire-Boisson-Alcool
-Alimentaire-Boisson-Jus de fruits
-Alimentaire-Boisson-Alcool
-Alimentaire-Boisson-Alcool-Vins
-Alimentaire-Boisson-Alcool-Bière
-Alimentaire-Boisson-Alcool-Apéritif
-Alimentaire-Conserve
-Alimentaire-Frais
10 ligne(s) sélectionnée(s).
syntaxe :
NB : la ligne est complétée par des espaces pour atteindre ce nombre de caractères.
syntaxe :
- 26 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
syntaxe :
syntaxe :
SET numwidth 8
syntaxe :
SET pagesize 60
syntaxe :
syntaxe :
syntaxe :
- 27 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
syntaxe :
syntaxe :
syntaxe :
-- affichage du résultat
SET term ON
-- non affichage du résultat
SET term OFF
syntaxe :
-- affichage de l'entete
SET heading ON
-- non affichage de l'entete
SET head OFF
syntaxe :
syntaxe :
-- affichage de la commande
SET echo ON
-- non affichage de la commande
SET echo OFF
- 28 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
NB : Ce sont les principales, il en existe d'autres (SQL*Plus : Menu Option-> Environment) dont vous trouverez
l'explication dans la documentation Oracle.
- 29 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
6 -- Mise à jour --
7 UPDATE test
8 SET nom = nom
9 WHERE ROWNUM <= 3 ;
10 DBMS_OUTPUT.PUT_LINE( To_char( SQL%ROWCOUNT ) || ' enregistrements mis à jour') ;
11 -- Insertion --
12 INSERT INTO test
13 SELECT * FROM test ;
14 DBMS_OUTPUT.PUT_LINE( To_char( SQL%ROWCOUNT ) || ' enregistrements insérés') ;
15 -- Suppression --
16 DELETE FROM test
17 WHERE ROWNUM < 3 ;
18 DBMS_OUTPUT.PUT_LINE( To_char( SQL%ROWCOUNT ) || ' enregistrements supprimés') ;
19 ROLLBACK ;
20 END ;
21 /
6 enregistrements
3 enregistrements mis à jour
6 enregistrements insérés
2 enregistrements supprimés
- 30 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
LINE/COL ERROR
-------- -----------------------------------------------------------------
4/3 PL/SQL: Statement ignored
4/10 PLS-00201: l'identificateur 'SUBTR' doit être déclaré
SQL>
SQL> SELECT *
2 FROM user_errors
3 WHERE name = 'DEBUT'
4 AND type = 'FUNCTION'
5 ORDER BY SEQUENCE
6 /
DEBUT FUNCTION 2 4 3
PL/SQL: Statement ignored
SQL> SELECT CPT_OCCURRENCES( 'le et le et le', 'le' ) "Nombre d'occurrences" FROM DUAL ;
Nombre d'occurrences
--------------------
3
Comment obtenir le temps d'exécution instruction par instruction de vos codes PL/SQL ?
Auteurs : SheikYerbouti ,
En installant l'outil Oracle : Profiler
Vous devez être connecté avec le privilège SYSDBA
- 31 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
--------------------------------------
-- Installation de l'outil profiler --
--------------------------------------
connect / as sysdba
@<ORACLE_HOME>/rdbms/admin/proftab.sql
@<ORACLE_HOME>/rdbms/admin/profload.sql
@<ORACLE_HOME>/plsql/demo/profrep.sql
----------------------------------------------
-- Test de la procédure stockée : F_TRACE() --
----------------------------------------------
SQL>
1 DECLARE
2 Pgm NUMBER;
3 BEGIN
4 DBMS_PROFILER.START_PROFILER('test','test1',Pgm);
5 FD.F_TRACE('Hello Oracle world','T');
6 DBMS_PROFILER.STOP_PROFILER;
7 DBMS_PROFILER.ROLLUP_RUN(Pgm);
8 PROF_REPORT_UTILITIES.PRINT_RUN(Pgm);
9* END;
SQL> /
===========================Results for run #1 made on 23-OCT-04 14:20:55 =========================
(test) Run total time: .16 seconds
Unit #1: SYS.DBMS_PROFILER - Total time: .00 seconds
Unit #2: <anonymous>.<anonymous> - Total time: .00 seconds
Unit #3: FD.F_TRACE - Total time: .02 seconds
1 procedure F_TRACE ( PC$Message in VARCHAR2, PC
$Output in VARCHAR2 DEFAULT 'S' )
2 Is
3 PRAGMA AUTONOMOUS_TRANSACTION ;
4 LC$String Varchar2(4000) ;
5 LN$Slices PLS_INTEGER ;
6 LN$Rest PLS_INTEGER ;
7 1 ,00001660 ,00001660 LN$Pos PLS_INTEGER := 1 ;
8 LN$Inc PLS_INTEGER ;
9 Begin
10
11 1 ,00009573 ,00009573 If Upper( PC$Output ) = 'S' Then
12 -- Screen output (DBMS_OUTPUT) --
13 0 0 LN$Inc := 255 ;
14 0 0 LN$Slices := Length( PC
$Message ) / LN$Inc ;
15 0 0 LN$Rest := MOD( Length( PC
$Message ), LN$Inc ) ;
16 0 0
If LN$Rest > 0 Then LN$Slices := LN$Slices + 1 ; End if ;
17
18 -- output --
19 0 0 For i in 1..LN$Slices Loop
20 0 0 LC$String := Substr( PC
$Message, LN$Pos, LN$Inc ) ;
21 0 0 DBMS_OUTPUT.PUT_LINE( LC$String ) ;
22 0 0 LN$Pos := LN$Pos + LN$Inc ;
23 End loop ;
24
25 Else
26 -- Table output (INSERT) --
27 1 ,00000095 ,00000095 LN$Inc := 4000 ;
28 1 ,00003589 ,00003589 LN$Slices := Length( PC
$Message ) / LN$Inc ;
- 32 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 33 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
v_occurence := v_occurence + 1;
IF p_replace IS NOT NULL THEN
dbms_lob.writeappend(v_clob_temp, v_replace_len, p_replace);
END IF;
END LOOP;
IF length(p_search) > length(p_replace) THEN
dbms_lob.TRIM(p_dest_clob, dbms_lob.getlength(v_clob_temp));
END IF;
dbms_lob.copy(p_dest_clob, v_clob_temp, dbms_lob.getlength(v_clob_temp), 1, 1);
EXCEPTION
WHEN OTHERS THEN
htp.prn('[Error in lob_replace : ' || SQLCODE || ' ' ||
SQLERRM || ']');
END;
Exemple d'utilisation : si la colonne X correspond à un nombre, on veut avoir ce nombre multiplié par 1000 :
SQL> SELECT x,
2 isNumeric(x),
3 CASE
4 WHEN isNumeric(x) = 1 THEN 1000 * TO_NUMBER(x)
5 END x_fois_1000
6 FROM TEST;
X ISNUMERIC(X) X_FOIS_1000
---------- ------------ -----------
1 1 1000
1,10 1 1100
1,234E3 1 1234000
-1,23E-3 1 -1,23
- 34 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
1 toto 0
SQL> select *
2 from TELEPHONE;
TELEPHONE#
--------------------------------------------------------------------------------
07.08.09.02.02
07-08-09-02-02
01 02 02 02 02
TOTO
07/07/07/07/07
SQL>
1 begin
2 for tel in (select * from TELEPHONE)
3 loop
4 if owa_pattern.match(tel.telephone#, '^\d{2}-\d{2}-\d{2}-\d{2}-\d{2}$') then
5 dbms_output.put_line(tel.telephone#);
6 end if;
7 end loop;
8* end;
SQL> /
07-08-09-02-02
Les éléments ci-dessus peuvent être suivi par les indicateurs de cardinalité suivants :
• ? : 0 ou 1 occurrence
• * : 0 ou plus occurrences
• + : 1 ou plus occurrences
- 35 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
L'expression régulière qu'on a utilisé pour décrire notre format de numéro de téléphone ^\d{2}-\d{2}-\d{2}-\d{2}-\d{2}$
se décrypte donc de la manière suivante :
• \d{2} : on cherche deux chiffres
• - : suivis d'un tiret
• \d{2}- : suivi de deux chiffres et d'un tiret
• \d{2}- : suivi de deux chiffres et d'un tiret
• \d{2}- : suivi de deux chiffres et d'un tiret
• \d{2} : suivi de deux chiffres
Comme notre expression régulière commence par ^, elle décrit le début de la chaine; comme elle se termine par $,
elle décrit aussi sa fin.
La solution est d'utiliser du SQL dynamique pour masquer la requête au moteur PL/SQL en utilisant par exemple
EXECUTE IMMEDIATE :
begin
execute immediate '
insert into TEST
select
case
when deptno = 10 then ''Dept 10''
when deptno = 20 then ''Dept 20''
else
''Departement inconnu''
end
from
TEST1';
end;
- 36 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
• TRACE: booléen; il faut entrer TRUE pour demander à Oracle de générer le fichier de trace, et FALSE pour
arrêter sa génération
Vous trouverez plus de détails dans cet article : Différentes façon de tracer l'activité de sessions
SELECT text
FROM DBA_SOURCE
WHERE type = 'PACKAGE'
AND name like UPPER('%&package%')
ORDER BY line;
------------
-- OVERVIEW
--
-- These procedures accumulate information in a buffer (via "put" and
-- "put_line") so that it can be retrieved out later (via "get_line" or
-- "get_lines"). If this package is disabled then all
-- calls to this package are simply ignored. This way, these routines
-- are only active when the client is one that is able to deal with the
-- information. This is good for debugging, or SP's that want to want
-- to display messages or reports to sql*dba or plus (like 'describing
-- procedures', etc.). The default buffer size is 20000 bytes. The
-- minimum is 2000 and the maximum is 1,000,000.
...
procedure put_line(a varchar2);
pragma restrict_references(put_line,WNDS,RNDS);
procedure put_line(a number);
pragma restrict_references(put_line,WNDS,RNDS);
-- Put a piece of information in the buffer followed by an end-of-line
-- marker. When retrieved by get_line(s), the number and date items
-- will be formated with to_char using the default formats. If you
-- want another format then format it explicitly. get_line(s) return
-- "lines" as delimited by "newlines". So every call to put_line or
-- new_line will generate a line that will be returned by get_line(s).
-- Input parameters:
-- a
-- Item to buffer
-- Errors raised:
-- -20000, ORU-10027: buffer overflow, limit of <buf_limit> bytes.
- 37 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
-- -20000, ORU-10028: line length overflow, limit of 255 bytes per line
Return( dif ) ;
End ;
/
- 38 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SQL> declare
2 dd pls_integer;
3 hh pls_integer;
4 mi pls_integer;
5 ss pls_integer;
6 dif number ;
7 Begin
8 dif := diff_temps ( sysdate, sysdate + 10.523, dd,hh,mi,ss ) ;
9 dbms_output.put_line(
10 '(' || ltrim(to_char(dif,'99999.99999')) || ')' || ' '
11 || to_char(dd,'99999') || 'j '
12 || to_char(hh,'00') ||':'
13 || to_char(mi,'00') ||':'
14 || to_char(ss,'00')
15 ) ;
16 End;
17 /
(10.52300) 10j 12: 33: 07
SET SERVEROUTPUT ON
DECLARE
XmlFic Utl_File.File_Type;
XmlData CLOB;
Fin BOOLEAN := TRUE;
BEGIN
-- Créer des données au format XML à partir d'une requête :
XmlData := DBMS_XMLQuery.GetXML ('SELECT * FROM EMP');
END LOOP;
Utl_File.FClose (XmlFic);
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE (SUBSTR (SQLERRM,1,255));
Utl_File.FClose (XmlFic);
END;
/
- 39 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
LOOP
EXIT WHEN ContenuXML IS NULL;
-- découpe en lignes :
Ligne := SUBSTR(ContenuXML, 1, INSTR(ContenuXML, CHR(10)) - 1);
dbms_output.put_line (Ligne);
ContenuXML := SUBSTR(ContenuXML, INSTR(ContenuXML, CHR(10)) + 1);
END LOOP;
END;
/
DECLARE
fichier CLOB;
BEGIN
fichier := dbms_XMLQuery.getXML ('SELECT * FROM EMP');
OutPut_Fichier (fichier);
END;
/
Declare
LC$OrdreSql Varchar2(2000) ;
Begin
LC$OrdreSql := 'ALTER INDEX my_index REBUILD' ;
EXECUTE IMMEDIATE LC$OrdreSql ;
End;
N'oubliez-pas que tout ordre du DDL génère un COMMIT implicite et que les droits nécessaires à l'exécution de
l'instruction contenue dans la fonction EXECUTE IMMEDIATE doivent avoir été donné directement à l'utilisateur,
et non pas via un rôle.
- 40 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Lorqu'une ligne sera insérée dans la table MaTable, la colonne macolonne_PK sera alors renseignée avec la valeur
suivante de la séquence MaSequence.
Il est également possible de se passer du trigger, et d'opter pour la syntaxe suivante :
Il est utile de noter que la séquence n'est donc pas liée à un champ ou une table, et que vous pouvez utiliser la même
séquence pour plusieurs champs.
FUNCTION get_param1
RETURN VARCHAR2;
END;
/
- 41 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
RETURN VARCHAR2
AS
BEGIN
RETURN param1;
END;
END;
/
TABLE_NAME
------------------------------
T_ORAFRANCE
Donc on va tout d'abord créer la classe Java permettant d'exécuter une commande système :
- 42 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
};
/
show errors java source "Host"
Ensuite on publie la spécification d'appel de cette classe en utilisant une procédure PL/SQL pour la "wrapper" :
- 43 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Enfin, les permissions nécessaire doivent être données par l'utilisateur SYS pour que le JServer puisse accèder aux
fichiers su système :
EXEC Dbms_Java.Grant_Permission('SCHEMA-
NAME', 'java.io.FilePermission', '<>', 'read ,write, execute, delete');
EXEC Dbms_Java.Grant_Permission('SCHEMA-
NAME', 'SYS:java.lang.RuntimePermission', 'writeFileDescriptor', '');
EXEC Dbms_Java.Grant_Permission('SCHEMA-
NAME', 'SYS:java.lang.RuntimePermission', 'readFileDescriptor', '');
debut.pls
CREATE OR REPLACE FUNCTION debut
(PC$Chaine IN VARCHAR2) RETURN VARCHAR2 IS
BEGIN
RETURN SUBSTR( PC$Chaine, 1, 5 ) ;
END;
Encryptons-le :
- 44 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SQL> @c:\temp\debut.plb
Fonction créée.
Attention, ceci ne fonctionne pas sur les triggers ou les blocs PL/SQL anonymes, cf la documentation Oracle
- 45 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 46 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 47 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SQL> SELECT
2 OWNER,
3 TABLE_NAME,
4 TABLESPACE_NAME,
5 NUM_ROWS,
6 BLOCKS,
7 EMPTY_BLOCKS,
8 LAST_ANALYZED
9 FROM DBA_TABLES
10 WHERE OWNER = 'FD' ;
19 ligne(s) sélectionnée(s).
SQL> /
- 48 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
ALTER TABLE emp ADD CONSTRAINT lect_seule CHECK (1=1) DISABLE VALIDATE;
UPDATE emp SET ename=ename;
--> ORA-25128: Aucune insertion/mise à jour/suppression possible sur une table avec contrainte
(SCOTT.LECT_SEULE) désactivée et validée
Notre table est donc protégée contre toute modification accidentelle de son contenu.
SELECT table_name,
owner,
num_rows,
chain_cnt,
(chain_cnt * 100) / num_rows AS ratio,
pct_used,
pct_free
FROM Dba_Tables
WHERE Owner NOT IN ('SYS','SYSTEM')
AND table_name = 'MaTable'
AND Chain_Cnt !=0
ORDER BY 5 desc;
- 49 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SELECT utc.table_name,
count (distinct utc.column_name) nb_col,
count (distinct index_name) nb_index,
count (distinct uic.column_name) / count (distinct utc.column_name) prct_index
FROM user_tab_columns utc, user_ind_columns uic
WHERE utc.table_name = uic.table_name
AND utc.table_name= 'PS_JOB'
GROUP BY utc.table_name;
- 50 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 51 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
select USERNAME,
USER_ID,
DEFAULT_TABLESPACE,
TEMPORARY_TABLESPACE,
PASSWORD,
ACCOUNT_STATUS,
PROFILE,
CREATED
from DBA_USERS
order by USERNAME;
set verify on
set feedback on
set termout on
set linesize 200
ACCEPT to_user PROMPT 'Saisir le user cible (OPS$) : '
ACCEPT from_user PROMPT 'Saisir le user source : '
DEFINE filename = &to_user._&from_user
set verify off
set feedback off
set pagesize 0
- 52 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
set termout on
SELECT 'Creating user build script...' FROM dual;
set termout off
spool c:\alter_user_&filename..sql
SELECT 'CREATE USER &to_user IDENTIFIED EXTERNALLY PROFILE ' || profile ||
' DEFAULT TABLESPACE '|| default_tablespace ||
' TEMPORARY TABLESPACE ' || temporary_tablespace
FROM sys.dba_users
WHERE username = UPPER('&from_user')
AND NOT EXISTS (SELECT 1 FROM dba_users WHERE username = UPPER('&to_user'))
/
set termout on
SELECT 'Creating grant build script...' FROM dual;
set termout off
spool c:\grant_prvs_&filename..sql
SELECT 'GRANT ' || privilege || ' TO &to_user' || admin_option
FROM (
SELECT LOWER(grantee) grantee, LOWER(granted_role) privilege,
DECODE(admin_option,'YES',' WITH ADMIN OPTION;',';') admin_option
FROM sys.dba_role_privs
WHERE grantee != 'SYS'
union
SELECT LOWER(grantee) grantee, LOWER(granted_role) privilege,
DECODE(admin_option,'YES',' WITH ADMIN OPTION;',';') admin_option
FROM sys.dba_role_privs
WHERE grantee != 'SYS'
union
SELECT LOWER(grantee) grantee, LOWER(privilege) privilege,
DECODE(admin_option,'YES',' WITH ADMIN OPTION;',';') admin_option
FROM dba_sys_privs s
WHERE grantee != 'SYS'
union
SELECT LOWER(grantee) grantee, LOWER(privilege) || ' ON ' ||
LOWER(table_name) privilege, DECODE(grantable,'YES',
' WITH ADMIN OPTION;',';') admin_option
FROM dba_tab_privs t
WHERE grantee != 'SYS'
and t.privilege !='EXECUTE'
union
SELECT LOWER(grantee) grantee, LOWER(privilege) || ' ON ' ||
LOWER(table_name) privilege, DECODE(grantable,'YES',
' WITH ADMIN OPTION;',';') admin_option
FROM dba_tab_privs t
WHERE grantee != 'SYS'
and t.privilege ='EXECUTE'
union
SELECT LOWER(owner) grantee, 'ALL ON ' || LOWER(owner) ||'.'||
LOWER(table_name) privilege, ';' admin_option
FROM all_tables
WHERE owner = upper('&from_user')
ORDER BY 1
)
WHERE grantee = LOWER('&from_user');
spool off
- 53 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
set termout on
SELECT 'Creating synonym build script...' FROM dual;
set termout off
spool c:\create_synonyms_&filename..sql
set termout on
SELECT 'Creating database link build script...' FROM dual;
set termout off
spool c:\create_dblinks_&filename..sql
spool off
set termout on
PROMPT
PROMPT Tapez [Ctrl+C] pour interrompre le process ou [Enter] pour continuer après avoir vérifier les
scripts générés...
PAUSE
spool c:\copy_user_&filename..sql
- 54 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
spool off
Nous décrivons ici le paramétrage nécessaire pour mettre en place cette authentification OS dans un environnement
Windows.
Précisons qu'il ne suffit pas que le client soit sous Windows; le serveur Oracle doit l'être aussi.
Le principe est que chaque compte NT doit être mis en correspondance avec un compte Oracle. Le compte Oracle est
identique au compte NT, sauf que le compte Oracle possède en plus un préfixe qui est identique pour tous les comptes
authentifiés par l'OS. Par défaut, ce préfixe est OPS$. Ainsi, si le compte NT est TOTO, le compte Oracle correspondant
doit être OPS$TOTO.
Le choix de l'authentification OS reste souple : il s'applique uniquement aux comptes choisis, si bien qu'on peut tout
à fait gérer certains comptes de manière traditionnelle, avec le mot de passe dans la base, et gérer les autres grâce à
l'authentification OS.
Voici la procédure :
1) Dans le SQLNET.ORA côté client et côté serveur, insérer :
SQLNET.AUTHENTICATION_SERVICES=(NTS)
REMOTE_OS_AUTHENT=TRUE
3) Dans l'INITxxx.ORA, noter la valeur du paramètre OS_AUTHENT_PREFIX (OPS$ par défaut), ou lui donner la
valeur désirée. Le plus commode est "" (deux guillemets consécutifs, sans espace) ce qui correspond à une valeur nulle,
et permet d'avoir des comptes NT et des comptes Oracle identiques.
Redémarrer l'instance si une modification a été faite au point 2 ou 3.
4) La clé de registre OSAUTH_PREFIX_DOMAIN, située côté serveur dans la branche HKLM\Software\Oracle
\HomeN, permet de spécifier si l'authentification doit tenir compte ou non du nom de domaine NT.
Avec OSAUTH_PREFIX_DOMAIN à FALSE, seul le nom du compte est vérifié, indépendamment de son domaine NT.
Cela signifie que 2 comptes Toto, situés dans des domaines différents, pourraient accéder à la base de données.
Avec OSAUTH_PREFIX_DOMAIN à TRUE, le domaine NT est également vérifié, ce qui améliore la sécurité.
5) Création du compte Oracle en majuscules et entre guillemets.
(Si OS_AUTHENT_PREFIX est nul, il suffit de supprimer la mention OPS$)
5.1) Dans le cas où OSAUTH_PREFIX_DOMAIN est à FALSE pour un compte NT nommé Stagiaire
- 55 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
OU 5.2) Dans le cas où OSAUTH_PREFIX_DOMAIN est à TRUE pour un compte NT nommé Stagiaire dans le domaine
Paris
sqlplusw /@labase
Il ne doit pas y avoir d'espace entre le / et le @. En effet, s'il y a un espace "labase" est considéré comme le nom d'un
script à exécuter, et non comme un alias Oracle Net.
Ou si on est déjà dans SQL*Plus :
CONNECT /@labase
Il est ensuite possible de lui assigner des droits via la commande GRANT :
- 56 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 57 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Voici un exemple de mise en oeuvre, où l'attribut CREATE est désactivé pour l'utilisateur FORMATION :
1 ligne créée.
SQL> commit ;
Validation effectuée.
1 ligne supprimée.
SQL> commit ;
Validation effectuée.
Table créée.
TCP.VALIDNODE_CHECKING=yes
TCP.INVITED_NODES=(xxx.x.x.xxx,xxx.x.x.xxx)
TCP.VALIDNODE_CHECKING=yes
TCP.EXCLUDED_NODES=(xxx.x.x.xxx,xxx.x.x.xxx)
- 58 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Vous trouverez plus de détails dans cet article : Filtrage global au niveau du serveur
et de la commande suivante :
SQLPLUS /NOLOG
CONNECT SYS/pwd@db AS SYSDBA
- 59 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
• FAILED_LOGIN_ATTEMPTS : Nombre d'erreurs permises à la saisie du mot de passe avant que le compte soit
verrouillé,
• PASSWORD_GRACE_TIME : En cas de péremption d'un mot de passe dû à un délai fixé par l'administrateur,
cette option permet de paramétrer une durée (en jours) pendant laquelle l'utilisateur pourra tout de même se
connceter, mais recevra un avertissement,
• PASSWORD_LIFE_TIME : Durée (en jours) de vie maximum d'un mot de passe,
• PASSWORD_LOCK_TIME : Durée (en jours) pendant laquelle un compte sera verrouillé après qu'il ait atteint
le nombre d'erreurs permises à la saisie de son mot de passe (FAILED_LOGIN_ATTEMPTS),
• PASSWORD_REUSE_MAX : Nombre de changement de mots de passe requis avant de pouvoir ré-utiliser un
mot de passe déjà utilisé,
• PASSWORD_REUSE_TIME : Durée (en jours) minimum pendant laquellel'utilisateur ne peut pas ré-utiliser un
mot de passe déjà utilisé, à partir du moment où celui-ci a été changé,
• PASSWORD_VERIFY_FUNCTION : permet de préciser une fonction (PL/SQL) vérifiant la compexité du mot
de passe.
2. Créons un profil :
- 60 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
14 ligne(s) sélectionnée(s).
- 61 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
select
FILE_ID,
FILE_NAME,
STATUS,
TABLESPACE_NAME
from
DBA_DATA_FILES
order by FILE_ID;
select
a.TABLESPACE_NAME,
a.CONTENTS,
a.EXTENT_MANAGEMENT,
a.ALLOCATION_TYPE,
a.SEGMENT_SPACE_MANAGEMENT,
a.BIGFILE,
a.STATUS,
nvl(sum(b.count_files),0) FILES,
nvl(sum(b.bytes),0) "SIZE",
nvl(sum(b.maxbytes),0) MAX_SIZE,
nvl(sum(b.bytes),0)-nvl(sum(c.free_bytes),0) "USED"
from DBA_TABLESPACES a,
(
select TABLESPACE_NAME,
sum(BYTES) bytes,
count(*) count_files,
- 62 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
sum(greatest(MAXBYTES,BYTES)) maxbytes
from DBA_DATA_FILES
group by TABLESPACE_NAME
union all
select TABLESPACE_NAME,
sum(BYTES),
count(*),
sum(greatest(MAXBYTES,BYTES)) maxbytes
from DBA_TEMP_FILES
group by TABLESPACE_NAME
) b,
(
select TABLESPACE_NAME,
sum(BYTES) free_bytes
from DBA_FREE_SPACE
group by TABLESPACE_NAME
union all
select TABLESPACE_NAME,
sum(BYTES_FREE) free_bytes
from V$TEMP_SPACE_HEADER
group by TABLESPACE_NAME
) c
where a.TABLESPACE_NAME = b.TABLESPACE_NAME (+)
and a.TABLESPACE_NAME = c.TABLESPACE_NAME (+)
group by
a.TABLESPACE_NAME,
a.CONTENTS,
a.EXTENT_MANAGEMENT,
a.ALLOCATION_TYPE,
a.SEGMENT_SPACE_MANAGEMENT,
a.BIGFILE,
a.STATUS
order by a.TABLESPACE_NAME;
TABLESPA CONTENTS EXTENT_MAN ALLOCATIO SEGMEN BIG STATUS FILES SIZE MAX_SIZE USED
-------- --------- ---------- --------- ------ --- ------ ----- --------- ---------- ---------
SYSAUX PERMANENT LOCAL SYSTEM AUTO NO ONLINE 3 397410304 6442450944 395771904
SYSTEM PERMANENT LOCAL SYSTEM MANUAL NO ONLINE 1 471859200 2147483648 470548480
TEMP TEMPORARY LOCAL UNIFORM MANUAL NO ONLINE 1 20971520 2147483648 17039360
UNDOTBS1 UNDO LOCAL SYSTEM MANUAL NO ONLINE 1 182452224 2147483648 13041664
USERS PERMANENT LOCAL SYSTEM MANUAL NO ONLINE 1 26214400 2147483648 524288
Concernant les fichiers d'archives, la requête suivante permet de connaître les informations suivantes :
• Chemin et nom de fichier
• Numéro de thread
• Numéro de séquence
• Taille
• Identifiant resetlogs (10g)
• Date
• État (9i)
select NAME,
THREAD#,
SEQUENCE#,
BLOCKS*BLOCK_SIZE "SIZE",
RESETLOGS_ID,
COMPLETION_TIME,
STATUS
from V$ARCHIVED_LOG
order by SEQUENCE#;
- 63 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
select
FILE_ID,
FILE_NAME,
STATUS,
TABLESPACE_NAME
from
DBA_TEMP_FILES
order by FILE_ID;
Cela ne liste que les tablespaces temporaires à allocation d'extent locale (locally managed). En effet, les tablespace
temporaires dictionary managed (qui datent d'Oracle 7) ne seront pas listées, car ils ne contiennent pas de "tempfile"
mais des datafiles.
select NAME,
STATUS
from V$CONTROLFILE
order by NAME;
NAME STATUS
------------------------------------------------- -------
/u01/LSC63/ctrl/ctrl01aLSC63.dbf
- 64 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
/u01/LSC63/ctrl/ctrl01bLSC63.dbf
Comment lister les fichiers Redo Log ainsi que leurs caractéristiques principales ?
Auteurs : Laurent Schneider ,
La requête suivante permet d'afficher les fichiers redo Log, avec les propriétés suivantes :
• Groupe
• Thread
• Séquence
• Taille
• Nombre de log dans le groupe
• Type (9i)
• État
• Nom des fichiers
• Groupe
select l.GROUP#,
l.THREAD#,
l.SEQUENCE#,
l.BYTES,
l.MEMBERS,
l.STATUS,
f.TYPE,
f.MEMBER
from V$LOGFILE f, V$LOG l
where l.GROUP# = f.GROUP#
order by GROUP#,MEMBER;
SELECT NAME,
DBID,
LOG_MODE,
FLASHBACK_ON,
OPEN_MODE,
CREATED
- 65 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
FROM v$database;
À partir d'Oracle 9i, la requête suivante permet d'afficher le nom et la valeur des propriétés de la base de données (ex:
tablespace properties) :
SELECT PROPERTY_NAME,
PROPERTY_VALUE,
DESCRIPTION
FROM DATABASE_PROPERTIES
ORDER BY PROPERTY_NAME;
SELECT INSTANCE_NAME,
VERSION
FROM V$INSTANCE;
INSTANCE_NAME VERSION
---------------- -----------------
LSC63 10.2.0.2.0
GLOBAL_NAME
------------------------------
LSC63.DOMAIN.CH
- 66 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SELECT NAME,
DETECTED_USAGES
FROM DBA_FEATURE_USAGE_STATISTICS
ORDER BY NAME;
NAME DETECTED
--------------------- --------
Partitioning (system) 11
Partitioning (user) 0
Il n'est pas possible de renommer les tablespaces System et Sysaux. On peut renommer les tablespaces permanents et
temporaires : pour ce faire, le tablespace ou l'un de ses fichiers de données ne doit pas être hors ligne, sinon l'opération
de renomage ne peut avoir lieu !
Lorsque l'on modifie le nom d'un tablespace, Oracle met à jour les références de ce tablespace : à savoir les fichiers de
contrôle, le dictionnaire de données et les en-têtes de fichiers.
Si ce Tablespace est en mode Read Only les entêtes de fichiers ne sont pas modifiés (ils ont besoin pour ce faire d'être
en mode Read Write) : Un message est consigné dans le fichier alerte de l'instance.
- 67 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Si la modification de nom concerne le tablespace d'annulation UNDO et qu'il s'agit du tablespace désigné par le
paramètre d'initialisation, la modification affecte le Spfile. Si c'est le Pfile qui est utilisé, alors un message d'alerte est
consigné dans le fichier d'alerte de l'instance
Le paramètre compatible doit au moins être a 10.0.0.
SQL> create tablespace x datafile '/tmp/x1.dbf' size 4m, '/tmp/x2.dbf' size 4m;
Tablespace created.
Tablespace altered.
Attention : En 10g, le "LIBRE" peut être différent de ("ALLOUE"- "OCCUPE") à cause de la recyclebin !
- 68 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
OCCUPANT_NAME SPACE_USAGE_KBYTES
---------------------------------------------------------------- ------------------
LOGMNR 6080
LOGSTDBY 896
STREAMS 512
XDB 49600
AO 21248
XSOQHIST 21248
...
- 69 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
La première ligne indique que la fonction LIGNESALAIRE occupe 280 octets de code source et nécessite 563 octets
en mémoire à l'exécution.
- 70 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 71 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SELECT COMP_NAME,
STATUS,
VERSION
FROM DBA_REGISTRY
ORDER BY COMP_NAME;
SELECT ACTION_TIME,
ACTION,
VERSION,
ID
FROM DBA_REGISTRY_HISTORY
ORDER BY to_timestamp(ACTION_TIME,'DD.MM.YYYY HH24:MI:SSXFF');
- 72 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
PORT_STRING
-----------------------------------------------
IBMPC/WIN_NT-8.1.0
Comment savoir si une base source est valide pour une migration en 10g ?
Auteurs : Jaouad ,
Lors d'une migration vers une base 10g, comment savoir si les pré requis ont été vérifiés avant d'effectuer la migration ?
Via un nouvel outil d'upgrade ( Upgrade information Tool ) :
Prendre le fichier utlu101i.sql ( migration vers une 10gR1 ) présent dans le dossier $ORACLE_HOME\rdbms\admin
\ et le faire tourner sur la base source. Il est possible de faire une migration vers la 10g ( quelque que soit la release )
sans passer par d'autres versions si la base source est 806, 817, 927
SELECT spid
FROM v$process
WHERE NOT EXISTS ( SELECT 1
FROM v$session
WHERE paddr = addr);
• sous Windows :
- 73 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Mais il peut être utile parfois de le solliciter manuellement, ce qu'on appelle un wakeup :
1. Exécutez d'abord la requête suivante :
PID
----------
8
- 74 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
2. Puis récupérez le PID pour exécuter la commande suivante (connecté en tant que SYSDBA) :
En général : 6 => 8i, 7 => 9i et 8 => 10g
- 75 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SELECT OWNER,
OBJECT_TYPE,
OBJECT_NAME,
CREATED,
LAST_DDL_TIME
FROM DBA_OBJECTS
WHERE STATUS='INVALID'
ORDER BY OWNER, OBJECT_NAME;
SELECT
TS_NAME,
TYPE,
OWNER,
ORIGINAL_NAME,
OBJECT_NAME,
DROPSCN,
CREATETIME,
DROPTIME
FROM dba_recyclebin
ORDER BY owner, type, original_name, dropSCN;
- 76 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SELECT SCHEMA_USER,
JOB,
NEXT_DATE,
WHAT
FROM DBA_JOBS;
SELECT s.USERNAME,
s.OSUSER,
s.SID,
s.SERIAL#,
p.SPID,
s.SERVER,
s.STATUS,
s.MACHINE,
s.PROGRAM,
TO_CHAR(s.LOGON_TIME, 'hh24:mi:ss') LOGON_TIME,
d.name DISP,
ss.name SERV
FROM V$PROCESS p,
V$SESSION s,
V$DISPATCHER d,
- 77 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
V$CIRCUIT c,
V$SHARED_SERVER ss
WHERE p.ADDR = s.PADDR
AND s.SADDR=c.SADDR (+)
AND c.DISPATCHER=d.PADDR (+)
AND c.SERVER=ss.PADDR (+)
AND s.USERNAME IS NOT NULL
ORDER BY s.USERNAME, p.SPID;
USERNAME OSUSER SID SERIAL# SPID SERVER STATUS MACHINE PROGRAM LOGON DISP SERV
-------- ------ ---- ------- ------------ --------- -------- --------- ------- ----- ---- ----
DBSNMP oracle 129 31 2465846 SHARED ACTIVE pclsc01 emagent 06:17 D000 S003
DBSNMP oracle 122 6 2728088 NONE INACTIVE pclsc01 emagent 06:17 D000
SYS oracle 113 2669 2920628 DEDICATED ACTIVE pclsc01 sqlplus 10:38
SELECT SID,
SERIAL#,
OPNAME,
SOFAR,
TOTALWORK,
TIME_REMAINING
FROM V$SESSION_LONGOPS
WHERE TIME_REMAINING != 0;
Comment voir toutes les tables qui sont dans le buffer KEEP ?
Auteurs : LeoAnderson , Jaouad ,
Depuis la version 8, le BUFFER CACHE est divisé en plusieurs segments : DEFAULT, KEEP et RECYCLE.
Contrairement à ce que leurs noms peuvent laisser penser, ils sont gérés tous les 3 exactement de la même façon, par
les même règles LRU (Last Recently Used).
En général, on utilise le buffer KEEP pour y stocker les blocks des tables que l'on interroge souvent; et le buffer
RECYCLE pour des données plus volatiles.
Par exemple, si on a une table de REFERENCE, une table de COMMANDES et une table IMAGE_PRODUIT, on aura
intérêt à répartir les tables de la façon suivante :
• COMMANDES sur le buffer pool DEFAULT
• REFERENCE dans le buffer pool KEEP
• IMAGE_PRODUIT dans le buffer pool RECYCLE
En effet, si l'on interroge l'image (volume important), cela va nécessiter de sortir du pool de nombreux blocs de
REFERENCE qu'il faudra recharger ultérieurement alors que les blocs de l'image auront très peu de chance de
resservir...
Les noms des buffers pools ne sont qu'une astuce mnémotechnique, car ils pourraient très bien s'appeller A, B et C,
cela ne changerait rien !
Remarque : depuis la 9i, il est possible de définir des buffer pools de taille de block différente ( db_nk_cache_size) mais
les buffer KEEP et RECYCLE auront forcément comme taille de bloc la taille DEFAULT.
- 78 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Donc, on a 3 pools de taille par défault et jusqu'à 4 buffers de taille différente, ce qui fait 7 zones buffers indépendantes
au maximum ! (mais je vous déconseille vivement d'implémenter un tel système, ça deviendra impossible à administrer/
tuner !)
La requête est la suivante :
SELECT dba_objects.owner,object_name,object_type,object_type
FROM dba_objects, dba_indexes,dba_tables
WHERE dba_objects.object_name = dba_indexes.index_name
AND dba_objects.object_name = dba_tables.table_name
AND dba_tables.buffer_pool = 'KEEP'
AND dba_indexes.buffer_pool = 'KEEP' ;
Attention : avec les multiples buffers pools, il n'est plus possible de monitorer les ratios par la vue habituellement utilisée
(v$SysStat) mais Oracle a implémenté la vue v$Buffer_Pool_Statistics :
TABLE created.
- 79 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Il faut être connecté en tant que SYSDBA, sous peine d'obtenir l'erreur suivante :
JOUR MO
--------- ----------
26-SEP-06 48226
25-SEP-06 25258
24-SEP-06 20438
23-SEP-06 31261
22-SEP-06 17450
21-SEP-06 18811
20-SEP-06 30778
19-SEP-06 36108
18-SEP-06 90508
17-SEP-06 31568
- 80 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
16-SEP-06 50283
Sql> SHUTDOWN
On ne peut pas modifier le mode ARCHIVELOG en NOARCHIVELOG si la base à besoin d'une restauration media.
2. Il faut ensuite sauvegarder la base :
En effet, avant de faire des modifications majeures dans la base, il faut toujours la sauvegarder pour se protéger pour
des raisons de sécurité.
3. Editer le fichier d'initialisation pour ajouter les paramètres qui spécifient la destination des archives.
4. Démarrer la base en mode mount sans l'ouvrir :
Le changement du mode d'archivage mettra à jours le fichier de contrôle et rendra les anciennes sauvegardes
inutilisables.
6. Arrêter la base :
7. Sauvegarde la base :
En version 10g, il n'est pas nécessaire de renseigner le paramètre d'initialisation :
LOG_ARCHIVE_START = TRUE
- 81 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
• Arrêt :
The following J2EE Applications have been deployed AND are accessible at the URLs listed below.
iSQL*Plus URL:
http://sproerp17:5560/isqlplus
isqlplusctl stop
- 82 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
isqlplusctl start
- 83 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
21 ligne(s) sélectionnée(s).
Afficher la place occupée par toutes les tables d'un schéma particulier :
Taille Blocs
--------------- ----------
7,25Mo 928
- 84 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Taille Blocs
--------------- ----------
12,625Mo 1616
Taille Blocs
--------------- ----------
647,484375Mo 82878
Exemple d'utilisation :
Trigger created.
- 85 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Ce genre de trigger est utile en particulier pour fixer les paramètres régionaux (séparateur décimal, séparateur de
milliers...) indépendamment de la plateforme (Windows, Unix...) et de l'outil utilisé pour la connection (SQL*Plus,
SQL*Loader, ...).
- 86 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
select OWNER,
DIRECTORY_NAME,
DIRECTORY_PATH
from DBA_DIRECTORIES
order by OWNER,
DIRECTORY_NAME;
Voici un exemple :
Table created.
View created.
View created.
View created.
SQL>
SQL> create view v4 as select x from t;
View created.
- 87 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SQL>
SQL> --
SQL> -- compiler toutes les vues
SQL> --
SQL> create or replace procedure ctv
2 is
3 comm varchar2(100);
4 begin
5 for lv in (select view_name from user_views)
6 loop
7 comm := 'ALTER VIEW ' || lv.view_name || ' COMPILE';
8 dbms_output.put_line(comm || ' ...');
9 execute immediate comm;
10 dbms_output.put_line('... OK.');
11 end loop;
12 end;
13 /
Procedure created.
Procedure created.
Procedure created.
- 88 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Table altered.
OBJECT_NAME STATUS
--------------- -------
V1 INVALID
V2 INVALID
V3 INVALID
V4 INVALID
OBJECT_NAME STATUS
--------------- -------
V1 VALID
V2 VALID
V3 VALID
V4 VALID
SQL>
Système modifié.
- 89 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Système modifié.
Comment modifier le mot de passe de l'utilisateur sysman dans Enterprise Manager Grid Control ?
Auteurs : bouyao ,
1. Il faut tout d'abord arrêter OMS :
• sous Unix :
• sous Windows :
• sous Unix :
• sous Windows :
5. Dans $ORACLE_HOME/sysman/config
5.1. Sauvegarder le fichier emoms.properties dans emoms.properties.orig
5.2. Editer le fichier emoms.properties
a. Rechercher la ligne commencant par: oracle.sysman.eml.mntr.emdRepPwd=
Remplacer la valeur encrypté par le nouveau mot de passe
- 90 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
• sous Windows :
Normalement, les paramètres cachés commencent par un underscore ('_'), et dans la 10g, on a en plus les paramètres
cachés qui commencent par deux underscore ('__').
Attention :
la modification de certains paramètres cachés peuvent corrompre votre base. Il faut les utiliser avec précautions !
- 91 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 92 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 93 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
lien : http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96652/ch01.htm#1012993
- 94 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 95 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SYSDATE
--------
28/06/04
On pourra facilement supprimer les premières et dernières lignes grâce aux commandes de formatages de SQL*Plus.
On peut préciser que jusqu'à la version 9i incluse, le fichier est écrasé s'il existe déjà. En 10g, les options CREATE/
REPLACE/APPEND apportent un choix en la matière.
'TOI
----
toi
Ainsi on obtient :
- 96 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
'TOI&MOI'
---------
toi & moi
'BONJOURDEVELOPPEZ.COM
----------------------
Bonjour Developpez.com
Pour éviter ces lignes disgracieuses dans un log, il faut désactiver la vérification avec la commande suivante :
'BONJOURDEVELOPPEZ.COM
----------------------
Bonjour Developpez.com
- 97 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
#TRACE_LEVEL_CLIENT = SUPPORT
#TRACE_DIRECTORY_CLIENT = d:\oracle\ora92\network\trace
#TRACE_TIMESTAMP_CLIENT = TRUE
#TRACE_UNIQUE_CLIENT = TRUE
Suite à l'activation du mode trace à partir du sqlnet.ora, voici comment rendre plus lisible le fichier généré :
Comment configurer le mode trace d'un client Oracle à des fins de Debug ?
Auteurs : Laurent Dardenne ,
Certaines configurations du client Oracle peuvent être placées sur un lecteur réseaux, voici comment faire pour la
modifier provisoirement sous réserve de disposer des droits nécessaires.
Ouvrez la base de registre puis sélectionnez la clé :
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES
La valeur de la sous-clé LASTHOME référence la clé HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE
\HOMEnuméro
Par exemple si la sous-clé LASTHOME vaut 1 alors on utilisera la sous-clé HKEY_LOCAL_MACHINE\SOFTWARE
\ORACLE\HOME1
Sélectionnez la clé HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME1, la sous-clé TNS_ADMIN contient le
nom du répertoire hébergeant les fichiers sqlnet.ora et tnsnames.ora.
Mémorisez ce nom de répertoire.
Créez un répertoire (par exemple C:\config-oracle) et recopiez-y les 2 fichiers sqlnet.ora et tnsnames.ora hébergés dans
le répertoire pointé par la sous-clé TNS_ADMIN.
Placez-vous dans le répertoire nouvellement créé puis modifiez, à l'aide d'un éditeur, le fichier sqlnet.ora comme ci-
dessous :
Placez en commentaire l'ancienne configuration du mode Trace
#TRACE_LEVEL_CLIENT = OFF
Ajoutez ces 2 lignes :
TRACE_LEVEL_CLIENT=SUPPORT
TRACE_DIRECTORY_CLIENT=C:\config-oracle
La valeur de l'entrée TRACE_DIRECTORY_CLIENT contient le répertoire précédemment créé et indique où placer
les fichiers trace.
La valeur de l'entrée TRACE_LEVEL_CLIENT indique le niveau de trace souhaité, seul SUPPORT permet d'avoir
un compte rendu détaillé sur les requêtes SQL (en émission et en réception).
Enfin sélectionnez la clé HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME1 et modifiez le contenu de la
sous-clé TNS_ADMIN avec le nom du répertoire précédemment créé.
En fin de session de Debug replacez, dans la clé HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE
\HOME1\TNS_ADMIN, la valeur d'origine.
Le mode trace n'est plus activé, sous réserve que le fichier sqlnet.ora d'origine contenait
TRACE_LEVEL_CLIENT=OFF
- 98 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Attention le fichier trace crée est très verbeux et impacte les performances, veillez donc à ne pas le laisser actif sur les
postes en production !
DVP =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = HOST1)(PORT = 1521))
(CONNECT_DATA =
(SID = SID1)
)
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = HOST2)(PORT = 1521))
(CONNECT_DATA =
(SID = SID2)
)
)
)
Lorsque, via notre chaîne de connexion, nous souhaitons nous connecter à la base nommée DVP, Oracle va tout d'abord
essayer de se connecter au SID1 sur le HOST1. Si celui ci ne répond pas, avant de provoquer l'erreur, Oracle va essayer
de se connecter sur le SID2 du Host2.
- 99 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 100 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 101 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 102 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
- 103 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
Dans les version inférieur (8.43) , il faut remplacer PS_XLATITEM par PS_XLATTABLE
Il est également impératif de tenir compte de la langue si il y a plusieurs langues d'installées
Comment voir les différents projets qui ont été installés et migrés sur une base ?
Auteurs : Jaouad ,
Grâce à la requête suivante :
RELEASEDT RELEASELABEL
--------- --------------------------------------------------
01-JAN-00 Core 6.00.00.000
09-SEP-97 Core 7.00.00.000
10-SEP-97 Core 7.01.00.000
11-SEP-97 Core 7.02.00.000
09-MAY-98 Core 7.50.00.000
10-MAY-98 Core 7.51.00.000
11-MAY-98 Core 7.52.00.000
12-MAY-98 Core 7.53.00.000
17-AUG-00 Financials/SCM 8.00.00.000
30-NOV-00 Financials/SCM 8.00.01.000
- 104 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
14 ligne(s) sélectionnée(s).
- 105 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
SQL> SELECT *
2 FROM PS_PRCSRUNCNTL
3 WHERE oprid = 'KBN' ;
SQL> SELECT *
2 FROM PS_PMN_PRCSLIST ;
SQL> SELECT *
2 FROM ps_prcsrecur ;
- 106 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
2 Daily 1 0 1 2 3 4 5
SQL> SELECT *
2 FROM PS_PRCSSEQUENCE ;
Comment lister les rapports générés ainsi que leurs types et leurs emplacements ?
Auteurs : Jaouad ,
Grâce à cette requête, nous allons pouvoir allez chercher directement les rapports lorsqu'il ne sont pas disponibles via
la consôle des traitements :
http://serveur/psp/DOMAINE/EMPLOYEE/ERP/?cmd=login&languageCd=FRA&trace=y
$PS_HOME/appserv/DOMAINE/LOGS/
- 107 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
et se décompose ainsi :
OPRID_NomPoste.tracesql
sproerp17-psoft84: /psoftsp1/appserv>psadmin -v
Version 8.46.06
Cette commande doit être lancé avec l'utilisateur système PSOFT et dans le répertoire suivant :
$PS_HOME/appserv
- 108 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/
FAQ Oracle
ROLEUSER ROLENAME D
--------------- ------------------- -
AMA1 AM_SS_EMPLOYEE N
AMA1 ANALYST N
AMA1 PAPP_USER N
AMA1 PeopleSoft User N
- 109 -
Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation de ces sources
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2007 Developpez LLC. Tout droits réservés Developpez LLC. Aucune
reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez
LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
http://oracle.developpez.com/faq/