Bonjour,
voilà quelques temps que j'apprends à manipuler les bases de données sous PyQt5.
j'ai finalement réussi à me dépatouiller de pas mal de choses (merci à vous)! QTableView, delegate etc...
au cours de mes essais d'apprentissage j'ouvrais les bases de données soit à partir d'un fichier .db enregistré en dur sur mon PC (via sqlite) via le code suivant:
soit via un serveur sur lequel j'avais accès à une base de données mySQL (import mysql.connector) via:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 def create_connection(self): self.db = QSqlDatabase.addDatabase("QSQLITE") self.db.setDatabaseName("pythonsqlite.db") if not self.db.open(): print("connexion impossible au fichier indiqué") return False return True
les deux modes de connexion ci-dessus fonctionnent mais n'est-il pas possible de se connecter avec un QSqlDatabase sur un serveur?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 connection = mysql.connector.connect(user='moi', password='1234567890', host='XXX.YYY-ZZZZ.fr', database='DATAB') cursor = connection.cursor()
j'ai essayé le code ci dessous mais ça ne passe pas...
c'est quel épisode que j'ai raté? je viens de parcourir la doc QSqlDatabase mais je ne vois pas où il manque quelque chose...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 db = QSqlDatabase.addDatabase("QMYSQL") db.setHostName("XXX.YYY-ZZZZ.fr") #ici c'est un url que j'indique... faut-il un ip? moyen de le connaitre comment? db.setDatabaseName("DATAB") db.setUserName("moi") db.setPassword("1234567890") if not db.open(): print("connexion impossible")
merci,
cordialement,
Partager