Bonjour,
Je suis en train d'essayer de comprendre le fonctionnement des Règles, et je suis confronté a un problème de récursion infinie.
J'ai une séquence, et une table. La table utilise la séquence comme clé primaire
Code:CREATE SEQUENCE SQ_Camps;
Je souhaiterais que l'utilisateur ne puisse pas donner lui-même de valeur a numéro, et donc qu'il sois forcément attribué par nextvalCode:
1
2
3
4
5 CREATE TABLE Camps ( Numero INTEGER DEFAULT nextval('SQ_Camps'), Lieu VARCHAR(20), Prix NUMERIC(5,2) );
Pour ca, j'ai créer cette règle:
C'est sensé intercepter la requête, et la renvoyer mais sans spécifier la valeur de Numero, pour que ce sois la valeur par défaut qui sois utiliséCode:
1
2
3
4
5
6 CREATE RULE RU_Camps AS ON INSERT TO Camps DO INSTEAD INSERT INTO Camps (Lieu, Prix) VALUES ( new.Lieu, new.Prix );
Hors, quand j'envoie une requête basique:
Je reçoit un message m'indiquant la récursion. Je n'arrive pas a voir d'ou vient le problème, d'autant plus qu'il n'y a pas d'autres règles attribuées a mon shémaCode:insert into camps (Lieu, Prix, Numero) values ('Test',110.0,22);
Merci d'avance a tous ceux qui pourront m'apporter un élément de réponse