Bonjour,
j'ai un probleme un peu bizarre avec Mysqldb (module mysql pour python)
J'ai créé un fichier avec des fonctions qui inserent des enregistrements dans mes tables. Si j'appelle ces fonctions depuis le même fichier, tout fonctionne parfaitement. Si par contre j'appelle une des fonctions depuis un autre fichier, je recois l'erreur suivante :
Je suis un peu perplexe..
Code : Sélectionner tout - Visualiser dans une fenêtre à part _mysql_exception.InterfaceError: (0, '')
Pour plus de détail :
J'appelle une fonction depuis la fichier builDB.py :
La fonction newFormat(..) est dans le fichier create.py (importé) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 import create create.newFormat("HD", 0,0,0)
Et j'ai une class Database qui gère la connexion :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 from Database import Database db = Database() def newFormat(name, width=0, height=0, fps=0): format_query = "INSERT INTO Format (form_name, form_width, form_height, form_fps) VALUES ('"+name+"',"+str(width)+","+str(height)+","+str(fps)+");" db.execute(format_query)
Le traceback est le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 import MySQLdb from MySQLdb.constants import FIELD_TYPE class Database(): def __init__(self): server = "localhost" login = "seq" password = "seqmanager" database = "Sequence" my_conv = { FIELD_TYPE.LONG: int } self.conn = MySQLdb.connection(host=server, user=login, passwd=password, db=database, conv=my_conv) # self.cursor = self.conn.cursor() def close(self): self.conn.close() def execute(self, query): self.conn.query(query)
Pour info, le warning est là depuis le début, il ne m'avait pas géné avant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Traceback : Z:\sequenceManager\mysql>python buildDB.py D:\ProgramFiles\Python26\lib\site-packages\MySQLdb\__init__.py:34: DeprecationWa rning: the sets module is deprecated from sets import ImmutableSet INSERT INTO Format (form_name, form_width, form_height, form_fps) VALUES ('HD',0 ,0,0); Traceback (most recent call last): File "buildDB.py", line 182, in <module> create.newFormat("HD") File "Z:\sequenceManager\mysql\create.py", line 52, in newFormat db.execute(format_query) File "Z:\sequenceManager\mysql\Database.py", line 19, in execute self.conn.query(query) _mysql_exceptions.InterfaceError: (0, '')
Toute aide serait bienvenue !
Partager