IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Procédural MySQL Discussion :

MySQL - formatage


Sujet :

SQL Procédural MySQL

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 48
    Par défaut MySQL - formatage
    Bonjour a tous,

    J'ai importé dans une base MySQL des enregistrements
    qui n'etaient pas bien formaté.

    Je dois mettre la premiere lettre en Maj et les suivantes en
    minuscules.

    Y aurait il un bout de dode qui peut executer cette transformation ?

    Merci pour vos reponse
    G92

  2. #2
    Membre Expert
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Par défaut
    Bonjour,

    en mysql ou en php ?
    si php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $ta_chaine = ucfirst(strtolower($ta_chaine));
    si c'est en mysql, il doit bien exister une fonction propre a mysql, mais je ne m'en souviens plus

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 48
    Par défaut
    Non, en My SQL

    UCASE ca met en minuscule
    UPPER ca met en majuscule

    Je trouve pas comment faire la transformation
    Peut etre avec REPLACE ?

  4. #4
    Membre Expert
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Par défaut
    ca y est j'ai retrouve, il y a lcase() pour mettre en minuscule et upper() pour les majuscules, mais il n'y a aucune fonction pour mettre la premiere lettre en majuscule . Il va falloir faire des moulinettes

    regarde par la les fonctions sur les chaines de caracteres mysql

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 48
    Par défaut
    Il y a aussi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    LOWER(chaine) 	
     
    SELECT monchamp, LOWER(monchamp) FROM matable
     
    UCASE(chaine) 	MySQL
     
    SELECT monchamp, UCASE(monchamp) FROM matable


    Mais je ne sais pas si ca marche avec un REPLACE ?

  6. #6
    Membre Expert
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Par défaut
    je ne peux pas te repondre la
    le mieux serait que tu fasse un test sur un enregistrement

  7. #7
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    quelque chose comme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CONCAT(UCASE(LEFT(champ, 1)), SUBSTRING(champ, 1))
    http://dev.mysql.com/doc/refman/4.1/...functions.html

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 48
    Par défaut
    Poutr ceux ke ca interesse
    j'ai résolu en faisant une moulinette PHP

    C'est peut etre pas le + elegant, j'aurais préfére faire ca directement en MYSQL
    mais ca a l'air galere

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    <table border="0" cellpadding="1" cellspacing="1">
      <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>TABLE </td>
      </tr>
      <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>nom</td>
      </tr>
    <?php
    $i = 0;
    mysql_select_db($database_chatgr, $chatgr);
    $query_CLIENT1 = "SELECT id_client, nom FROM TESTCLI";
    $CLIENT1 = mysql_query($query_CLIENT1, $chatgr) or die(mysql_error());
     
    $query_CLIENT2 = "SELECT id_client, nom FROM TESTCLI";
    $CLIENT2 = mysql_query($query_CLIENT2, $chatgr) or die(mysql_error());
     
       while (($row = mysql_fetch_row($CLIENT1)) && ($row2 = mysql_fetch_row($CLIENT2))){ 
     
      $row[1] = ucfirst(strtolower($row[1]));
     
        $i++;  
     
      if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form1")) {
      $updateSQL = sprintf("UPDATE TESTCLI SET nom=%s WHERE id_client=%s",
                           GetSQLValueString($row[1], "text"),
                           GetSQLValueString($row[0], "int"));
     
      mysql_select_db($database_chatgr, $chatgr);
      $Result1 = mysql_query($updateSQL, $chatgr) or die(mysql_error());
                                                                              }
      ?>
        <tr>
          <td><?php echo $i; ?></td>
    	<?     ?>
          <td><?php echo $row2[1]; ?></td> <?  ?>
     
    	  <td>
     
              <input name="nom" type="text" id="nom" value="<?php echo $row[1]; ?>" />
          </td>
        </tr>
        <?php }  ?>
    </table>
    <form id="form1" name="form1" method="post" action="">
      <input type="submit" name="Submit" value="Submit" />
      <input name="MM_update" type="hidden" id="MM_update" value="form1" />
    </form>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Formatage de données
    Par M1000 dans le forum MySQL
    Réponses: 2
    Dernier message: 28/01/2009, 17h23
  2. [MySQL] formatage requete mysql pour php
    Par yvon_huynh dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 05/10/2007, 23h06
  3. Formatage de données par Mysql ?
    Par wylls dans le forum Requêtes
    Réponses: 4
    Dernier message: 26/07/2007, 16h39
  4. [MySQL 5] [Débutant] Question rapide sur le formatage de données
    Par Konrad Florczak dans le forum Langage SQL
    Réponses: 6
    Dernier message: 01/11/2006, 10h52
  5. Formatage d'une date de MySQL
    Par Mister Nono dans le forum Requêtes
    Réponses: 3
    Dernier message: 17/07/2006, 08h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo