18-11-2006, 02:35 PM
essaye de t'assurer que le rapport d'erreur remonte sur plusieurs niveaux
ex :
class A {
function a{
//contient une erreur
}
}
class B {
function b{
a = new A();
a->a();
}
}
si ton système d'exception est correct, il va te dire dans un premier temps :
erreur sql, fichier B.class, l 27, erreur dans la fonction b
mais aussi, il va remonter l'erreur :
erreur sql, fichier A.clas, l36, erreur dans la fonction a, puis affichage de la requete préparée
Cela m'arrive de jouer sur plusieurs niveaux d'objet. J'ai des objets métiers (personnage, objet , monstre), des objets sql associés aux objets métiers qui font les accès à la base;
et mon système de combat par exemple, peut appeler un objet métier, qui peut en appeler un autre, qui va appeler un objet sql (requete), qui au final va créer un objet connection-requete.
Si il n'y a pas de remontée des erreurs, à chaque erreur sql, tu auras un message d'erreur à l'endroit même (cad dans ta classe de connection), sans savoir comment cette fonction a été appelée.
donc à tester.
ex :
class A {
function a{
//contient une erreur
}
}
class B {
function b{
a = new A();
a->a();
}
}
si ton système d'exception est correct, il va te dire dans un premier temps :
erreur sql, fichier B.class, l 27, erreur dans la fonction b
mais aussi, il va remonter l'erreur :
erreur sql, fichier A.clas, l36, erreur dans la fonction a, puis affichage de la requete préparée
Cela m'arrive de jouer sur plusieurs niveaux d'objet. J'ai des objets métiers (personnage, objet , monstre), des objets sql associés aux objets métiers qui font les accès à la base;
et mon système de combat par exemple, peut appeler un objet métier, qui peut en appeler un autre, qui va appeler un objet sql (requete), qui au final va créer un objet connection-requete.
Si il n'y a pas de remontée des erreurs, à chaque erreur sql, tu auras un message d'erreur à l'endroit même (cad dans ta classe de connection), sans savoir comment cette fonction a été appelée.
donc à tester.