Salut Bruno,

tu peux donner le numéro de l'issue et/ou son URL ?

(c'est juste par curiosité)


2013/12/30 Bruno <[email protected]>

> Plop,
>
> Je viens de voir passer les tickets sur les incompatibilités sqlite et ces
> ^$^'(é"( de UPDATE et DELETE pas supportés de manière uniforme selon les
> drivers.
>
> Je propose une approche radicale : faire une requête uniforme à base de
> select imbriqué, qui permettra de virer ces tests de drivers dans dcBlog,
> et ce pour la prochaine version 2.6.X.
>
> En clair, ce qui va changer :
>
> Dans delComments :
> DELETE FROM dc_comment tc
> USING dc_post tp
> WHERE tc.post_id = tp.post_id '.
> AND tp.blog_id = 'default'
> AND comment_id in (...)
> AND user_id='...'
>
> deviendra :
> DELETE FROM dc_comment
> WHERE comment_id in (..)
> AND post_id in (SELECT tp.post_id from dc_post where tp.blog_id='default'
> and tp.user_id='...');
>
>
> Dans delJunkComments on aura un truc du genre :
> DELETE FROM dc_comment
> WHERE comment_status = -1
> AND post_id in (
>     SELECT tp.post_id
>     FROM dc_post
>     WHERE tp.blog_id='default'
>     AND tp.user_id='...'
> );
>
>
> dans updComments:
> UPDATE dc_comment tc
> SET comment_status = '...'
> FROM dc_post tp
> WHERE blog_id = 'default'
> AND comment_id in (...)
> AND tc.post_id = tp.post_id
> AND user_id = '...'
>
> deviendra :
> UPDATE dc_comment
> SET comment_status = '...'
> WHERE post_id in (
>     SELECT tp.post_id
>     FROM dc_post tp
>     WHERE tp.blog_id = 'default'
>     AND tp.user_id = '...'
> )
>
> Des objections ?
>
> --
> Bruno
> --
> Dev mailing list - [email protected] -
> http://ml.dotclear.org/listinfo/dev
>



-- 
Pierre Equoy
-- 
Dev mailing list - [email protected] - http://ml.dotclear.org/listinfo/dev

Répondre à