CLASSE HELPER POSTGRESQL

Sirocooo Messages postés 412 Date d'inscription mercredi 19 décembre 2001 Statut Membre Dernière intervention 7 avril 2008 - 22 nov. 2006 à 11:48
Asmael Messages postés 2 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 16 mai 2008 - 16 mai 2008 à 13:15
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/40411-classe-helper-postgresql

Asmael Messages postés 2 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 16 mai 2008
16 mai 2008 à 13:15
salut Benouille!
Je n'ai pas encore testé son code mais je pense que tu pousses un peu fort tes remarques à son égard.
Si tu as mieux à proposer, c'est mieux de le faire plutôt que de perdre du temps à lui crier les limites de son code.Comme on ira plus de l'avant.Tu es un codeur et tu devrais comprendre tout le mal qu'il a eu a réaliser ce code.
Bon bref,j'espère que je t'offense pas (si tel est le cas, tu m'excuses) car cela n'a jamais été mon intention.c'est juste mon avis.
A+
cs_Benouille Messages postés 215 Date d'inscription jeudi 24 octobre 2002 Statut Membre Dernière intervention 7 septembre 2007
6 mars 2007 à 20:43
le code est ultra propre et ça fait plaisir.
même si j'ai toujours du mal avec les "If True Then" (pourquoi pas If True = True = True And True Or False ... Then" )

ou pire encore:
Cn.Open()
If Cn.State = ConnectionState.Closed Then
ConnectDataBase = False
ElseIf Cn.State = ConnectionState.Open Then
ConnectDataBase = True
Cn.Close()
End If

soit quelquechose m'échappe soit c'est du code inutile.
Si le .open plante de toutes façons la suite ne sera pas lue (pas de try catch géré dans la fonction appelante donc c'est le catch de la fonction open qui lui même ne fait rien qui est sensé gérer l'erreur)

le If pue du cul aussi, pourquoi pas écrire simplement:
Return Cn.State = ConnectionState.Open

d'ailleurs une meilleure gestion du try catch sur une ouverture de connection se fait apres le .open pour assurer sa fermeture dans le finally en cas de plantage dans la requête.

Je n'ai rien vu (pardon si ça m'a échapé) concernant les proc stockées et pourtant il me semble que postgres les gere (comme des fonctions utilisateurs même si je dis pas de bétises mais à confirmer).
A aucun moment on ne passe de paramètres permettant d'utiliser la base autrement qu'en lui refourgant une chaine sql.

chaine sql filtrée d'ailleurs,
sous couvert de sécurité on ne peut plus utiliser exec ou %, ni de ponctuation, ouais ok mais bon on peut avoir des choses a stocker qui parlent la france avec des bouts de mots non tronqués.


c'est donc tres beau mais je trouve le niveau un peu léger, beaucoup de code inutile et le tout peu exploitable sur une application plus ouverte.
Je pense que tu devras la modifier le jour ou tu auras besoin de t'en servir.


j'ai mis 7/10 pour la clarté du code
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
28 nov. 2006 à 16:27
si car on a pas la DLL puisque tu as oublié de la mettre et je sais très bien importer un référence.
jsiAngers Messages postés 7 Date d'inscription dimanche 21 septembre 2003 Statut Membre Dernière intervention 28 avril 2009
24 nov. 2006 à 21:26
Je crois qu'il faut tu revois tes classiques... il faut ajouter une référence vers cette librairie libre qu'est Npgsql, si tu souhaites utiliser cette classe avec une base de données PostGresql... donc de nouveau, Cher OneHacker, pas d'erreur...
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
22 nov. 2006 à 17:06
Erreur : Imports Npgsql -> Espace de noms introuvables. Corrige ta source avant de la poster.
Rejoignez-nous