salut je chercha a faire une incrementation
sous oracle sur une clé primaire
comment fait on ?
se fait elle incrementation si on aliment tout les autres lément de la table sans touché la clé primaire
merci a vous
salut je chercha a faire une incrementation
sous oracle sur une clé primaire
comment fait on ?
se fait elle incrementation si on aliment tout les autres lément de la table sans touché la clé primaire
merci a vous
Bonjour,
Ce sujet a déjà été traité, par ex. http://www.developpez.net/forums/vie...+before+insert
Laly.
create trigger montrigger
before insert on table for each row
begin
select sqetest.nextval into :new.num_t from dual;
end;
/
avec ce code oracle me fait une erreur " privilege isufissant sur test "
alors que j'ai cree cette table
Est-ce-que tu as le privilège CREATE TRIGGER ?
Laly.
je vient de rajouter le privilege manquant
mais lorsque je veut inserer une donner dans la table qui possede 2 attrbut . une clé primaire et un autre attribut
j'alimente le 2 eme attribut mais la clé primaire de s'incremente pas
mercia vous
C'est que ton trigger n'a pas fonctionné, tu es sûr qu'il a bien compilé, tu n'as eu aucun msg d'erreur ?
Regardes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 SQL> create table test (pk number, y varchar2(100)); Table created. SQL> create sequence seq_test; Sequence created. SQL> create or replace trigger ti_test before insert on test for each row 2 begin 3 select seq_test.nextVal into :new.pk from dual; 4 end; 5 / Trigger created. SQL> insert into test(y) values('Hello 1?'); 1 row created. SQL> insert into test(y) values('Hello 2?'); 1 row created. SQL> select * from test; PK ---------- Y -------------------------------------------------------------------------------- 1 Hello 1? 2 Hello 2?
Laly.
create trigger trigtt before insert on test for each row
begin
select testtrig .nextval into : new.num_t from dual
end
/
apres executer ce code
il me fait une erreur
Avertissement : Déclencheur créé avec erreurs de compilation.
avant j'ai cree un table test ( num_t , nom)
merci a vous
insert into test (nom) values ('coucou') ;
avec cette commande j'ai une erreur
la voila
ORA-04098: Déclencheur 'TEST1.TRIGTEST' non valide. Echec de la revalidation
merci d'utiliser les balises codes
Peux-tu nous indiquer ce que te renvoie la requête :Envoyé par doudou1
C'est vrai orafrance que c'est tout de suite plus beau avec les balises code !!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part select * from user_errors where name = 'trigtt';
vu comme tel l'espace entre testtrig et .nextval est en trop.testtrig .nextval
d'où l'utilité de na pas donner le code approximatif ressaisi mais de faire un copier/coller de l'ensemble du code. vous ferez gagner du temps à tout le monde.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager