2011-03-24 3 views
0

j'ai écrit un démon python pour lire une base de données ... Je fais la prochaine:MySQLdb problème python base de données de rafraîchissement

db.connect('localhost', user, pass, database) 
while true: 
    cursor = db.cursor() 
    sql = "SELECT id FROM task WHERE status='pending'" 
    r = cursor.execute(sql) 
    if r != 0: 
     result = cursor.fetchall() 
     #..... 

Le problème est que: lorsque la base de données de changement, le démon ne le détecter ... peut rafraîchir ... que puis-je faire ??

merci !!

+1

changent la base de données lors de l'exécution? –

+0

oui j'insère de nouvelles tâches mais il ne les détecte pas – igferne

Répondre

-1

Je soluted il activer validation à la fin du script:

db.autocommit(True) 

merci pour tous les amis

0

Ceci est juste une supposition car je n'ai pas une vue complète de votre code, mais puisque vous vous connectez en dehors de la boucle, les changements à database ne dira pas db de se reconnecter.

Encore une fois juste une supposition, pas sûr si vous filetage ou non le filetage, la façon dont le changement coïncide avec le démon ... etc

+0

c'est vraiment vrai, je n'ai qu'une seule connexion ... car je veux travailler avec une seule connexion ... – igferne