jQuery
En savoir plus
Adobe Flex & Flash
En savoir plus
ASP.NET
En savoir plus

| Page 1 | |||
| Pseudo | Commentaire | ||
|---|---|---|---|
| Page 1 | |||
SpaceFox
|
# Posté le 01/09/2009 à 12:05:29 | ||
Utilise ton cerveau !
Études : UTT |
Dans "InnoDB : un moteur pour des bases robustes" : - "(lien vers tuto M..)" au lieu du lien. - "transactionnel(le)s ??" - "(lien ou explication)" Dans "Les transactions : COMMIT et ROLLBACK" : - J'ai l'impression qu'on va toujours annuler dans le dernier exemple (le ROLLBACK se fait toujours ou pas ?) Sinon, mis à part ce dernier point et quelques problèmes de style, le tuto est pas mal. |
||
Tortue facile
|
# Posté le 01/09/2009 à 12:22:30 | ||
DB2 + Cobol + CICS![]() Groupe : Anciens
Ville : Ivry-sur-seine |
Merci pour les fautes. Pour le point souligné : oui effectivement on va toujours annuler ce qui a été fait précédemment : c'est le principe du ROLLBACK. Tu peux exécuter cette série de lignes autant de fois que tu veux, tes données ne changeront pas d'un iota. Si c'est pas clair dites le. Grand fan de la tortue j'ai créé un site web avec notamment des infos sur l'hibernation de la tortue de terre. Je vous conseille aussi de lire cet article sur les pratiques contestables de Blogbang vis à vis de sa régie de pub. |
||
christophetd
|
# Posté le 01/09/2009 à 12:48:51 | ||
Regardez-moi !![]()
Ville : Gap |
Non, perso je trouve ça clair, et ça peut être bien utile à certaine personnes.
Mes tutoriels : |
||
SpaceFox
|
# Posté le 01/09/2009 à 13:44:53 | ||
Utilise ton cerveau !
Études : UTT |
Du coup ça soulève une question : Est-ce que tu peux faire en SQL pur un ROLLBACK uniquement si la transaction a foiré ? Si ça n'a aucun intérêt, ce serait à signaler aussi. |
||
firekraag
|
# Posté le 01/09/2009 à 13:52:25 | ||
korben dallas mooltipass?![]()
|
Très bon tutoriel qui me sera surement utile. Mais du coup je me pose quelques interrogations : y a-t-il des standards ? Comment fait-on en C++ ? Ou bien avec Oracle/Postgre/... Et aussi, est-ce possible d'afficher la liste des requêtes d'une transaction en attente de validation ? (en gros dire à la base "répète moi la liste de tâches que je viens de te dire, juste pour être sûr") Page perso (CV, photos) : http://www.leo-letaro.fr |
||
Tortue facile
|
# Posté le 01/09/2009 à 14:08:48 | ||
DB2 + Cobol + CICS![]() Groupe : Anciens
Ville : Ivry-sur-seine |
@SpaceFox : si tu veux faire tout ça en SQL pur, faut passer par les procédures stockées, mais là c'est un tout autre niveau. C'est l'avantage de PDO "d'émuler" les commandes SQL pour les transactions. @firekraag : y'a un standard selon les normes SQL, après chaque SGBDR fait comme il veut. Après avec par exemple le C++ je sais pas il faut voir si dans l'interface avec MySQl il y a des fonctions/méthodes similaires au PHP (je pense que oui mais moi et le C++ fait fait 2). Avec Oracle,PostGreSQL, etc ça marche au poil avec PDO puisque les pilotes sont fournis ces ces SGBDR. Pour la liste des requêtes en attente de validation dans la transaction : je sais pas si c'est accessible étant donné que ça dure pas non plus une éternité, après c'est surement possible en logguant les requêtes. Grand fan de la tortue j'ai créé un site web avec notamment des infos sur l'hibernation de la tortue de terre. Je vous conseille aussi de lire cet article sur les pratiques contestables de Blogbang vis à vis de sa régie de pub. |
||
`Haku
|
# Posté le 01/09/2009 à 16:00:45 | ||
* rose *![]()
Ville : Mons |
Parler de transaction sans parler du niveau d'isolation de celles-ci, c'est négligé une part très importante de leur utilisation.
Cours sur le PHP et le SQL, derniers chapitres : les fonctions anonymes et les fermetures, la table des symboles et les références, les scripts dans le script et les espaces de noms, les opérateurs bits à bits et la gestion des erreurs. |
||
Emm@nuel
|
# Posté le 01/09/2009 à 16:34:50 | ||
J'aime les lapins ! :D![]()
|
Bonjour, j'ai remarqué une faute de frappe au début du tutoriel : En effet, vous avez involontairement oublié le s à <?php or exit(myql_error()); ?>. ![]() Edit de Tortue : merci c'est corrigé. |
||
pathou
|
# Posté le 01/09/2009 à 18:29:02 | ||
|
|
Autre faute dans "les transition COMMIT et ROLLBACK" ==> le montant du vendeur ne chnager pas d'un pouce chnager veut changera ? |
||
La source
|
# Posté le 01/09/2009 à 19:30:33 | ||
où, quoi, comment ?![]()
Ville : Gembloux |
petite question... en lisant les commentaires au dessus de moi je vois:Citation si tu veux faire tout ça en SQL pur, faut passer par les procédures stockées Cela veut-il dire que si on ne passe pas par PDO on dois faire quelque chose de spécifique ? Car étant donné que j'utilise mysql_* (oui je sais il faudrait que je passe a autre chose, mais pour le moment moi je m'en satisfait), j'aimerai savoir si je peux utiliser les transactions sans problème. Cordialement, La source. Cherchez pas, l'erreur vient de vous ! (99.9% des erreurs sont entre la chaise et le clavier) Utilisez votre tête et pas vos pieds pour réfléchir |
||
`Haku
|
# Posté le 01/09/2009 à 19:44:22 | ||
* rose *![]()
Ville : Mons |
Tu peux sans problème utiliser les transactions avec les mysql_*.
Cours sur le PHP et le SQL, derniers chapitres : les fonctions anonymes et les fermetures, la table des symboles et les références, les scripts dans le script et les espaces de noms, les opérateurs bits à bits et la gestion des erreurs. |
||
La source
|
# Posté le 01/09/2009 à 20:39:21 | ||
où, quoi, comment ?![]()
Ville : Gembloux |
Merci pour ton information
Cherchez pas, l'erreur vient de vous ! (99.9% des erreurs sont entre la chaise et le clavier) Utilisez votre tête et pas vos pieds pour réfléchir |
||
Weaponsb
|
# Posté le 02/09/2009 à 09:29:09 | ||
la en desous a dit heu... rien![]()
Ville : Buire sur l'ancre |
Heu il me semble qu'il y à une 'erreur' dans le sens où le code n'est pas très propre sur les exceptions, en effet les exception de PDO sont normalement gérer par PDOException et non par Exception directement si ton code ne pose pas de problèmes c'est par ce que la classe Exception intercepte toutes les exceptions De plus tu doit normalement obligatoirement demander à PDO de travailler avec des exceptions avec le code Code : PHP
Sinon rien à redire
|
||
vyk12
|
# Posté le 02/09/2009 à 22:34:59 | ||
There is no spoon![]() Groupe : Anciens
|
@Weaponsb => Peu importe, la classe PDOException hérite de la classe Exception, on se moque donc quelle exception intercepter puisque ces deux reviennent au même. Et par défaut, PDO travaille avec les exceptions il me semble. Bref, super tuto, j'ai juste quelques petites "imperfections" : 1) Quand tu donnes des codes avec PDO, tu n'échappes pas les apostrophes dans la requête. C'est pas très "clean". ![]() 2) Ce n'est pas une erreur, mais tu places un SELECT * FROM machin. Je pense, même s'il ne s'agit que d'un exemple banale et que cette requête ne sera jamais présente dans un script, qu'il serait préférable de mettre plutôt SELECT champs FROM machin car à force de voir des exemples comme ça, les novices penseront qu'il s'agit d'une des meilleures façons d'écrire cette requête. En bref, rien de bien important, et je le redis, très bon tuto.
|
||
Weaponsb
|
# Posté le 03/09/2009 à 10:23:02 | ||
la en desous a dit heu... rien![]()
Ville : Buire sur l'ancre |
vyk12 => c'est ce qui fait la différence entre un bon et un mauvais programmeur, si les mecs qui ont dev PDO, on jugé qu'il été utile d'utilisée une autre classe d'exception c'est peut être qu'il y à une raison non ? je n'ai pas été voir le code de PDO (peut être même pas accesible je ne sais pas) mais qui te dit qu'ils n'ont pas redéfini des méthodes ? Pour le travail par défaut avec les exceptions non, par défaut PDO est en silent mod |
||
vyk12
|
# Posté le 03/09/2009 à 15:58:01 | ||
There is no spoon![]() Groupe : Anciens
|
Peut-être qu'ils ont réécrit des méthodes, ce que je voulais dire c'est que si on attrapait les exceptions de la classe Exception, on attraperait aussi les exceptions PDOException avec toutes les méthodes et tous les attributs de celle-ci. Mais c'est vrai qu'il est préférable d'attraper les exceptions PDOException uniquement.
|
||
anonyme
|
# Posté le 16/04/2010 à 15:56:44 | ||
|
|
Il faudrait rajouter que les transactions sont un excellent boost pour des requêtes INSERT, car une insertion nécessite de rafraichir les indexs, donc au lieu d'envoyer à MySQL une INSERT à la fois, on lui injecte 500 en une fois ! C'est sympa pour restaurer une base de données très rapidement ou pour d'autres usages
|
||
ostream
|
# Posté le 05/06/2010 à 18:24:09 | ||
Pas de commentaire![]()
|
C'est un bon tutos ![]() Tu devrais peut-être préciser si les transactions peuvent s'étaler sur plusieurs page. Je ne crois pas... mais je vais essayer quand même. ![]() |
||
asvez
|
# Posté le 13/03/2011 à 19:24:32 | ||
![]()
|
merçi ça me permet de déduire qu'on peut implémenter les transactions avec le c# et le java | ||
Migarya
|
# Posté le 24/03/2011 à 14:51:00 | ||
|
|
(je n'avais pas vu qu'il ne fallait pas poser de questions ici, veuillez m'excuser) | ||
iyucef
|
# Posté le 21/01/2012 à 14:50:46 | ||
![]() Avis : Bon
|
merci pour le tutoriel sa ma aider beaucoup a comprendre certains chose | ||
jadu29
|
# Posté le 05/02/2012 à 15:18:09 | ||
|
Prenez bien soin de vous.
|
Ouais ! mais PDO ne marche qu en local ... ou presque ! Il y a peu d'hébergeur gratuit qui le propose ! |
||
