Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème avec un trigger sous oracle !

3 réponses
Avatar
Soon
Bonjour à tous,

Je comprend pas pourquoi ce trigger ne marche pas !

Mes triggers marchents si je fais des select ou insert ... mais pour les
create :-(

Exemple simplifié :

CREATE TRIGGER creer_compte
AFTER INSERT ON client
FOR EACH ROW
BEGIN
CREATE USER toto IDENTIFIED BY client;
END

-> erreur !

Quelqu'un sait pourquoi ?

Merci d'avance.

-- Soon

3 réponses

Avatar
Fred BROUARD - SQLpro
quel est le message d'erreur ?

Sinon, il est possible que Oracle n'accepte pas de DDL dans le code d'un trigger.

A +

Soon a écrit:
Bonjour à tous,

Je comprend pas pourquoi ce trigger ne marche pas !

Mes triggers marchents si je fais des select ou insert ... mais pour les
create :-(

Exemple simplifié :

CREATE TRIGGER creer_compte
AFTER INSERT ON client
FOR EACH ROW
BEGIN
CREATE USER toto IDENTIFIED BY client;
END

-> erreur !

Quelqu'un sait pourquoi ?

Merci d'avance.

-- Soon



--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Avatar
Lionel TETTAMANTI
Soon a écrit :
Bonjour à tous,

Je comprend pas pourquoi ce trigger ne marche pas !

Mes triggers marchents si je fais des select ou insert ... mais pour les
create :-(

Exemple simplifié :

CREATE TRIGGER creer_compte
AFTER INSERT ON client
FOR EACH ROW
BEGIN
CREATE USER toto IDENTIFIED BY client;
END

-> erreur !

Quelqu'un sait pourquoi ?

Merci d'avance.

-- Soon



Bonsoir,

De mémoire, je ne pense pas que le PL/SQL support directement du code DDL.
Avec la 9i, il existe peut être une possibilité avec "execute immediate"
qui pourait sans doute fonctionner (sous reserve que les droits soient
suffisant).

Sinon il faudrait passer pas une procedure PL/SQL utilisant le package
DBMS_SQL.

CDLT
Avatar
Igor Racic
Bonjour,

Techiquement, Lionel t'a donné la réponse.
Pratiquement, c'est pas un bon approche. Tu doit envisager à
re-organiser ton code...

Igor


Soon wrote:
Bonjour à tous,

Je comprend pas pourquoi ce trigger ne marche pas !

Mes triggers marchents si je fais des select ou insert ... mais pour les
create :-(

Exemple simplifié :

CREATE TRIGGER creer_compte
AFTER INSERT ON client
FOR EACH ROW
BEGIN
CREATE USER toto IDENTIFIED BY client;
END

-> erreur !

Quelqu'un sait pourquoi ?

Merci d'avance.

-- Soon