Précédent   Forum des professionnels en informatique > Bases de données > DB2
DB2 Forum d'entraide technique sur la base de données DB2. Voir aussi -> Rubrique DB2
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/06/2006, 14h45   #1
Invité de passage
 
Inscription : février 2005
Messages : 17
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 17
Points : 3
Points : 3
Par défaut [TRIGGER]Probleme "declare x VARCHAR"

Bonjour à tous,

J'essaye de créer un trigger tout simple sous DB2 mais je me heurte à un problème avec mes lignes "declare x VARCHAR(50);":

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
CREATE TRIGGER JRSS_TG
 NO CASCADE BEFORE INSERT ON TJRSS 
 REFERENCING NEW AS NEWROW  FOR EACH ROW MODE DB2SQL 
 WHEN(NEWROW.JRSS_TITLE_TXT='') 
 BEGIN ATOMIC 
  DECLARE jr_title VARCHAR(50); 
  declare ee_title VARCHAR(50); 
  SET jr_title=SELECT JR_TITLE_TXT FROM TJOB_ROLE; 
  SET ee_title=SELECT EE_TITLE_TXT FROM TEE_FACET; 
  SET NEWROW.JRSS_TITLE_TXT=concat(jr_title,ee_title); 
END$
Si je fais un test sans les déclares le trigger se créé. J'ai aussi essayé d'autre type et j'ai toujours la meme erreur:

Code :
1
2
3
 
DB21034E  The command was processed AS an SQL statement because it was NOT avalid Command Line Processor command.  During SQL processing it returned:
SQL0969N  There IS no message text corresponding TO SQL error "-20100" IN the message file ON this workstation.  The error was returned FROM module "DSNHSQL" WITH original tokens "2 -104 42601 VARCHAR,STATEMENT".  SQLSTATE=56059
Je vous remercie pour votre aide!
++
syvid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 18h29   #2
Membre émérite
 
Inscription : décembre 2003
Messages : 782
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 782
Points : 821
Points : 821
juste une question:
tu ne devrais pas créer une procédure xxx puis dans ton trigger appeller la procédure xxx?
fraoustin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2006, 09h03   #3
Invité de passage
 
Inscription : février 2005
Messages : 17
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 17
Points : 3
Points : 3
Merci pour ta réponse.

hmmm, bonne idée mais ça reste quand absurde de ne pas pouvoir créer de trigger avec declare, alors que la doc semble dire que l'ensemble est possible...
syvid est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h19.


 
 
 
 
Partenaires

Hébergement Web