B0T, UNE SOURCE QUI VOUS PERMET DE VISUALISER LE CONTENU DE VOTRE TABLE MYSQL OU

codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 - 6 févr. 2008 à 14:11
cs_Windows300 Messages postés 7 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 10 février 2008 - 7 févr. 2008 à 08:59
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/45644-b0t-une-source-qui-vous-permet-de-visualiser-le-contenu-de-votre-table-mysql-ou-sql-server

cs_Windows300 Messages postés 7 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 10 février 2008
7 févr. 2008 à 08:59
CODEFALSE : C'est vrai que mon code n'est pas au point !
mais pour ce qui est mysql et mssql,
je on sais le faire avec les deux code
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
6 févr. 2008 à 22:01
@malalam, mon gourou ^^
@Windows300 : Euh je ne peux pas détailler plus, regarde du coté du lien que je t'ai donné ?!
L'idée, comme l'a tres bien expliqué Malalam, c'est de permettre aux personnes de pouvoir utiliser n'importe quelle base de donnée, pas QUE mysql.

@Coucou747 : Oh, tu sais, ce qu'il y a de bien avec les trolls, c'est que ca alimente la discussion (tant qu'elle reste controlée (tu préfere windows ou linux ? :p)). L'idée, (comme la tres bien dit Malalam (bis)), c'est que si tu fait une groupement de classes pour ta gestion de bdd, et que tu fait une classe spécifique MonAppRequestMySQL (par exemple, si "MonApp" ne fait que quelques requetes, sinon, bien sur, tu découpera cela en plusieurs petites classes), et cette classe contiendra les requetes Mysql (telle que SELECT col1 FROM table LIMIT 0, 20;) et si demain tu veux passer à PostGreSql, tu n'a qu'a faire une classe MonAppRequestPostGre, qui contiendra les mêmes méthodes que MonAppRequestMySQL mais en faisant un OFFSET au lieu du LIMIT (c'est un exemple bien sur !). Comme ca, ton travail se regroupe en la modification/Création d'une classe. Ca t'évite de rechercher dans tout ton code si tu a pas une fonction mysql qui traine.

Bien sur si tu n'utilise que du MySQL, les commentaires de Malalam et moi-même sont à supprimer ;)
Par contre le fait de dire que pour toi ca sert à rien, je dirai que concretement, ca dépendra de la personne, en effet :)
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
6 févr. 2008 à 20:18
@Coucou => dans ce cas-ci...pour faire un connect et un query afin d'afficher les valeurs du champ d'une table...on peut très bien mettre une abstraction : ça ne changera rien du tout au problème.
Plutôt que de réécrire tout le code juste pour changer 3 fonctions.
Ensuite, perso, je bosse sous mysql et mssql. Et une classe d'abstraction est un life saver, très sincèrement. It suffit qu'elle soit bien foutue : les procédures stockées existent sous mssql et Oracle. Il suffit de tenir compte des spécificités de chaque serveur DB au niveau des classes concrètes, point barre.
Toi, tu t'en fous parce que tu ne bosses que sous mysql. Tu n'es pas représentatif de 100% des codeurs php. Alors quand on publie un code se basant sur les bases de données, autant donner au moins la possibilité d'implémenter à moindres frais soi-même sa propre base de données. Donc, faire une abstraction, implémenter les classes concrètes que l'on connait en guise d'exemples, et si un développeur utilise une auytre base de données, il implémentera la sienne. Mais à moindres frais : sans se retaper tout le code de base.
Si requêtes spécifiques il y a, elles doivent se trouver au niveau des classes concrètes.
J'ai récemment intégré dans la mienne une méthode permettant de vérifier l'existence d'une table dans une base données. Bon...ben la requête implémentant ça se trouve dans une méthode tableExists() qui prend en paramètre le nom de la table. Et la requête effectuée est implémentée dans mes classes concrètes. Si je change de DB, je ne change rien au code si ce n'est instanciation de mon wrapper DB, mais pas l'appel de la méthode (ni le traitement de son retour derrière, puisque la méthode renvoie true ou false dans tous les cas).
Ca me semble une évidence.
cs_Windows300 Messages postés 7 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 10 février 2008
6 févr. 2008 à 17:49
Merci quand même, bonne soirée !
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
6 févr. 2008 à 16:24
ta source, c'est du php4 classique, j'ai pas grand chose a dire dessus
cs_Windows300 Messages postés 7 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 10 février 2008
6 févr. 2008 à 16:05
merci de votre commentaire, mais
CODEFALSE : tu ne sais pas détaillé
avec des mot plus simple !

COUCOU747 : que penses-tu de ma source ?
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
6 févr. 2008 à 14:39
Lieber Codefalse, je vais peut-etre declancher un troll :)
quand tu utilises des types bizares, fonctions exotiques, voir procedures et fonctions stoquees, as tu des chances de pouvoir changer un jours de sgbd ?

sachant que quand on utilise php, on peut quasiment toujours avoir mysql avec, et c'est pas le choix qui manque...

Bref, si tu mets ca comme commentaires, t'auras probablement a le mettre sur toutes mes sources parce-que j'irais pas apprendre oracle avant d'en avoir besoin, ni postgre ni autre... je resterais sur mysql et ne vois donc aucun interret d'utiliser une abstraction sachant que mes procedures mysql5 ne sont pas portables oracle...
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
6 févr. 2008 à 14:11
Utilisez les classes d'abstractions de bases de données
Utilisez les classes d'abstractions de bases de données
Utilisez les classes d'abstractions de bases de données
Utilisez les classes d'abstractions de bases de données
....
faut que ca rentre !
C'est pas ca qui manque, ne serait-ce que sur le site phpcs
http://www.phpcs.com/recherche.aspx?r=abstraction+sgbd

Sans compter les autres !
Rejoignez-nous