Warning: Undefined array key "DOKU_PREFS" in /home/clients/a4e6fc1ce1761b72982b805de0f418c4/web/python/mesrecettespython/inc/common.php on line 2082
variables_sqlite3 [Les recettes Python de Tyrtamos]

Outils pour utilisateurs

Outils du site


variables_sqlite3

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
variables_sqlite3 [2015/03/04 07:03]
tyrtamos
variables_sqlite3 [2015/03/04 07:09]
tyrtamos
Ligne 49: Ligne 49:
 Et on déclare varsql à chaque ouverture de la base (ici, cnx est la variable de connexion) avec: Et on déclare varsql à chaque ouverture de la base (ici, cnx est la variable de connexion) avec:
  
-<code python># fonctions pour créer et utiliser des variables +<code python>cnx.create_function("set_var", 2, varsql.set_var)
-cnx.create_function("set_var", 2, varsql.set_var)+
 cnx.create_function("get_var", 1, varsql.get_var) cnx.create_function("get_var", 1, varsql.get_var)
 </code> </code>
Ligne 56: Ligne 55:
 Grâce à cette double déclaration, nous pourrons utiliser set_var et get_var directement dans les scrips SQL pour sqlite3. Grâce à cette double déclaration, nous pourrons utiliser set_var et get_var directement dans les scrips SQL pour sqlite3.
  
-Bien sûr, il faut avoir conscience de ses caractéristiques: le dictionnaire des variables ainsi créé est global pour le script, et chaque nouvelle valeur affectée à une même variable écrase la précédente.+Bien sûr, il faut avoir conscience des caractéristiques de cette technique: le dictionnaire des variables ainsi créé est global pour le script, et chaque nouvelle valeur affectée à une même variable écrase la précédente.
  
-Juste un petit exemple pour vérifier que ça marche. Nous avons une table "test" avec un champs "mots". Nous voulons seulement répéter 2 fois le champs cherché sans le calculer 2 fois ("cur" est ici un curseur):+Juste un petit exemple pour vérifier que ça marche. Nous avons une table "test" avec un champ "mots". Nous voulons seulement répéter 2 fois le champ cherché sans le calculer 2 fois ("cur" est ici un curseur):
  
 <code python> <code python>
Ligne 67: Ligne 66:
 </code> </code>
  
-Dans ce script, chaque ligne sera composée de 2 champs, le 2ème étant identique au 1er.+Dans le résultat de cette requête, chaque ligne sera composée de 2 champs, le 2ème étant identique au 1er mais calculé qu'une seule fois.
  
 J'utilise maintenant cette technique dans certain scripts complexes, et ça résout très bien le problème: gain de temps et de complexité! J'utilise maintenant cette technique dans certain scripts complexes, et ça résout très bien le problème: gain de temps et de complexité!
variables_sqlite3.txt · Dernière modification: 2015/03/04 07:15 de tyrtamos