Récupérer le nombre de caractère d'un texte ?

Récupérer le nombre de caractère d'un texte ? - SQL/NoSQL - Programmation

Marsh Posté le 31-03-2008 à 21:52:56    

Hello,
j'ai actuellement un cron sur mon site qui modifie un champ de la BDD pour chaque joueur si il fait plus de 4 000 caractère.
Je fais actuellement comme ca :
 

Code :
  1. <?PHP
  2. $txt = 'Effacé car trop long';
  3. $rep = mysql_query('SELECT id, texte FROM joueurs');
  4. while ($donnees = mysql_fetch_array($rep))
  5. {
  6.    $id = $donnees['id'];
  7.  
  8.    if (strlen($donnees['texte']) > 4000)
  9.       mysql_query("UPDATE joueurs SET texte = '$txt' WHERE id='$id'" );
  10. }
  11. ?>


 
Mais si j'ai plusieurs millier de joueurs et que tous ont leurs "texte" trop long, ca me fait énormément de requêtes...
Donc ma question est : y'a t'il un moyen pour récupérer avec MySQL la taille d'une chaîne de caractère ? Et donc pouvoir faire mon code du dessus en une seul requête ?
Faire un truc du genre :
 

Code :
  1. mysql_query("UPDATE joueurs SET texte = '$txt' WHERE strlen(texte) > 4000" );


 
Merci !

Reply

Marsh Posté le 31-03-2008 à 21:52:56   

Reply

Marsh Posté le 01-04-2008 à 10:19:52    

char_length ou length selon tes besoins exacts.


---------------
Software and cathedrals are much the same - first we build them, then we pray.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed