« Programmation Python/Gestion d'une base de données » : différence entre les versions

Contenu supprimé Contenu ajouté
m ortho
Ligne 522 :
* Lignes 1-2 : Outre notre propre module <code>dict_app</code> qui contient les variables « globales », nous importons le module <code>sys</code> qui contient quelques fonctions système, et le module MySQLdb qui contient tout ce qui est nécessaire pour communiquer avec MySQL. Rappelons que ce module ne fait pas partie de la distribution standard de Python, et qu'il doit donc être installé séparément.
 
* Ligne 5 : Lors de la création des objets-interfaces, nous devrons fournir les paramètres de la connexion : nom de la base de données, nom de son utilisateur, nom ou adresse IP de la machine où est situé le serveur. Le nunméronuméro du port de communication est habituellement celui que nous avons prévu par défaut. Toutes ces informations sont supposées être en votre possession.
 
* Lignes 8 à 17 : Il est hautement recommandable de placer le code servant à établir la connexion à l'intérieur d'un gestionnaire d'exceptions <code>try-except-else</code>, car nous ne pouvons pas présumer que le serveur sera nécessairement accessible. Remarquons au passage que la méthode <code>__init__()</code> ne peut pas renvoyer de valeur (à l'aide de l'instruction <code>return</code>), du fait qu'elle est invoquée automatiquement par Python lors de l'instanciation d'un objet. En effet : ce qui est renvoyé dans ce cas au programme appelant est l'objet nouvellement construit. Nous ne pouvons donc pas signaler la réussite ou l'échec de la connexion au programme appelant à l'aide d'une valeur de retour. Une solution simple à ce petit problème consiste à mémoriser le résultat de la tentative de connexion dans un attribut d'instance (variable <code>self.echec</code>), que le programme appelant peut ensuite tester quand bon lui semble.