Ainsi parla Jean-Michel OLTRA le 042�me jour de l'an 2004:

> Le mercredi 11 f�vrier 2004, Nicolas Rueff a �crit...
>       bonjour,
> 
> 
> > > Et surtout de tester les requetes mysql avant de les inserer dans
> > > un script Guy
> 
> > Avec la fonction ultime: cr�ation d'une requ�te PHP � partir de la
> > requ�te SQL 8~)
> 
> Je ne sais pas comment fonctionne phpmyadmin (en fait je l'eu install�
> il y a un moment mais...), mais parfois les requ�tes acceptables par
> le client donnent une erreur en php:
> ex: SELECT * FROM TABLE1, TABLE2;
> truc compl�tement idiot qui donnera une erreur si deux champs ont le
> m�me nom avec MySQL (il para�t que sous Oracle non), mais pas si la
> requ�te est envoy�e du client mysql.

�a d�pend: php utilise soit un tableau associatif (style
"nom_de_la_colonne"=>"valeur de la cellule"), soit index� (style
0=>"valeur de la cellule"), soit un mix des deux.

Dans le premier et le dernier cas, effectivement, �a conduit � des
erreurs si deux champs de deux tables diff�rentes ont le m�me nom.


Deux solutions: 
1) passer par "SELECT TABLE1.COL1 AS TLBCOL1, TABLE2.COL1 AS TBLCOL2
FROM TABLE1, TABLE2": bourrin au codage, mais les cl�s des tableaux
associatifs restent uniques dans une seule requ�te
2) utiliser uniquement le type de tableau index� pour lire les r�sultats
des requ�tes: bourrin � l'utilisation.

> Quant � la g�n�ration de lignes de code automagiquement, c'est p� bien
> pour apprendre le SQL, moins bien pour apprendre le langage.

C'est plut�t une histoire de g�n�rer rapidement une requ�te php �
partir d'une en SQL, quand on d�passe les 1000 caract�res et qu'on a pas
envie de tout se taper les escape � la main.


-- 
  .,p**"*=b_   Nicolas Rueff
 ?P"  .__ `*b   Montb�liard  -  France
|P  .d?'`&, 9|   http://rueff.tuxfamily.org
M:  |}   |- H'   [EMAIL PROTECTED]
&|  `#?_._oH'   +33 6 77 64 44 80
`H.   "`"`'   JB [EMAIL PROTECTED] 
 `#?.       GPG 0xDD44DAB4 
   `^~.

We are Penguin. Resistance is futile. You will be assimilated.

Attachment: pgpgiBOpdOxYv.pgp
Description: PGP signature

Répondre à