Skip to content
Extraits de code Groupes Projets
Bifurcation depuis spip / spip
Le projet source a une visibilité limitée.
  • esj's avatar
    f7392a66
    Abstraction de tous les appels {{{ spip_query("SELECT ..... WHERE ... }}} pour... · f7392a66
    esj a rédigé
    Abstraction de tous les appels {{{ spip_query("SELECT ..... WHERE ... }}} pour que les champs de type Date dans la clause WHERE soient transformé pour Postgres.
    La Regexp précédent était trop restrictive dans sa manière d'exclure les requêtes avec GROUP BY, ORDER BY et LIMIT.
    
    Dépot obtenu par: 
    
    {{{
    for i in $(grep -l 'spip_query..SELECT.*FROM.*WHERE[^YT]*;' [a-i]*/*php)
    do
    # Pour la clause DISTINCT, laisser intact pour le moment.
    sed 's/spip_query..SELECT *\([^D]*[^ ]\) *FROM *\(.*[^ ]\) *WHERE *\([^YT]*;\)$/sql_select("\1", "\2", "\3/;s/ "" *\.//;s/ch(sql_select\(.*\));/sel\1;/' $i > x
    echo $i
    mv x $i
    done
    }}}
    
    et une suppressions manuelle de lourdeurs syntaxiques résultantes, et ajout d'une Include.
    Pas d'intervention sur le fichier inc/meta: au test, include manquant. À controler.
    f7392a66
    Historique
    Abstraction de tous les appels {{{ spip_query("SELECT ..... WHERE ... }}} pour...
    esj a rédigé
    Abstraction de tous les appels {{{ spip_query("SELECT ..... WHERE ... }}} pour que les champs de type Date dans la clause WHERE soient transformé pour Postgres.
    La Regexp précédent était trop restrictive dans sa manière d'exclure les requêtes avec GROUP BY, ORDER BY et LIMIT.
    
    Dépot obtenu par: 
    
    {{{
    for i in $(grep -l 'spip_query..SELECT.*FROM.*WHERE[^YT]*;' [a-i]*/*php)
    do
    # Pour la clause DISTINCT, laisser intact pour le moment.
    sed 's/spip_query..SELECT *\([^D]*[^ ]\) *FROM *\(.*[^ ]\) *WHERE *\([^YT]*;\)$/sql_select("\1", "\2", "\3/;s/ "" *\.//;s/ch(sql_select\(.*\));/sel\1;/' $i > x
    echo $i
    mv x $i
    done
    }}}
    
    et une suppressions manuelle de lourdeurs syntaxiques résultantes, et ajout d'une Include.
    Pas d'intervention sur le fichier inc/meta: au test, include manquant. À controler.