Bienvenue sur IndexError.

Ici vous pouvez poser des questions sur Python et le Framework Django.

Consultez la FAQ pour améliorer vos chances d'avoir des réponses à vos questions.

Mise à jour SQLite : donnée modifiée par donnée modifiée ou globale (tout, même donnée non modifiée)

+4 votes

Linux/Win XP/7 -- Python 3.4

Soit une base de données SQLite qui contient un certain nombre d'informations composées 'en ligne' de valeurs et de libellés appartenant à des signaux électriques (la base SQLite est faite).

'ID',   'NOM',  'U',    'I',  'type',   'APPAREIL'
1   ,   SIG_1,  12,     22,   'A',      'Device01'
2   ,   SIG_2,  18,     44,   'B',      'Device01'
3   ,   SIG_A,  12,     22,   'C',      'Device02'
4   ,   SIG_B,  18,     44,   'A',      'Device02'
...
N   ,   NOM_Y,  48,     22, 'A,B ou C', 'DeviceX'

Je souhaite les afficher dans une interface pour éventuellement les éditer. Chaque paramètre sera mis dans une Entry Tkinter (tableur) (mais peu importe). J'afficherai mes informations dans des onglets différents : 1 par "appareil".

Question :

Le mieux en rapport vitesse / complexité de codage ?

Dois-je référencer chacune de mes Entry Tkinter (mes cellules) de façon à pouvoir mettre à jour uniquement les valeurs modifiées, c'est à dire qu'après chaque modification, s'il y en a, j'enverrai une requête SQL(ite) qui mettra à jour uniquement cette cellule ? (=> Je serai obligé de mettre un callback pour chaque tkinter.Entry pour savoir si la cellule a été modifié, je pense.)

Ou bien, je ne me pose pas de question, je ne référence que le groupe de valeur -- je ne sais pas encore comment -- et, si au moins une valeur est modifiée, je mettrai à jour toutes les données de ce signal ? ( => Callback par cellule aussi, je suppute).

Ou encore, plus brutal, je prends TOUTES mes valeurs de TOUS les signaux et je fais une requête SQLite globale qui mettra à jours ma base de données de tous les signaux qu'ils aient ou non été modifiés lorsque je quitterai l'appli ? (=> Pas de callback, je sauve tout)

demandé 17-Avr-2015 par Agagax (182 points)

1 Réponse

0 votes

Tu mets un callback pour chaque entrée car si il arrive un crash de ton appli en cours de route, ton utilisateur perd tout avec un save uniquement à la fin;

répondu 19-Avr-2015 par Sam (5,000 points)
...