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

MS SQL Server Discussion :

Formater un champ int sur 10 caracteres


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Par défaut Formater un champ int sur 10 caracteres
    Bonjour,

    Voilà j'aimerai stocker dans ma base de donnée l'identifiant de mes commandes qui biensur s'ajoute en autoincrémente mais formater sur 10 caractères, qui serai remplis avec des 000..

    est-ce possible ?

  2. #2
    Membre émérite
    Avatar de HULK
    Inscrit en
    Juillet 2003
    Messages
    1 276
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 276
    Par défaut
    il faudrais peut etre que tu es deux colonnes, une en int en auto increment et une en varchar ou tu mets ton int plus les 0

  3. #3
    Membre très actif
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Par défaut
    euh ... çà me parait bien lourd

    une autre soluce ?

  4. #4
    Membre émérite
    Avatar de HULK
    Inscrit en
    Juillet 2003
    Messages
    1 276
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 276
    Par défaut
    comme tu veux, si on te propose rien d'autre voici un morceau de code qui pourra t'interesser

    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
     
    /****************************************************************************/
    -- compléte avec des zéros un nombre converti en chaine de caractères
    /****************************************************************************/
    CREATE FUNCTION dbo.FN_PAD_ZERO (@INT INTEGER, @NBR_ZERO INTEGER)
    RETURNS VARCHAR(8000)
    AS
    BEGIN
     
    DECLARE @OUT VARCHAR(8000)
     
    -- cas trivial @NBR_ZERO est NULL
    IF @NBR_ZERO IS NULL
       RETURN @OUT
     
    -- cas trivial @NBR_ZERO < longueur de @INT
    IF @INT IS NOT NULL
       IF @NBR_ZERO < LEN(CAST(@INT AS VARCHAR(8000)))
          RETURN @OUT
     
    -- cas général
    SET @OUT = CAST(@INT AS VARCHAR(8000))
    WHILE LEN(@OUT) < @NBR_ZERO
    BEGIN
       SET @OUT = '0'+@OUT
    END
     
       RETURN @OUT
     
    END
    GO

  5. #5
    Membre très actif
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Par défaut
    Merci beacoup pour ton aide HULK.

    Mais n'existe t'il pas une solution comme on peut le trouver sur Acces avec le format

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 31
    Par défaut
    Tu peux aussi faire comme ça ... ça fait bidouille, mais ça fonctionne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT RIGHT(10000000000 + @i, 10)

Discussions similaires

  1. formater un champ date dans un select
    Par sbeu dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 24/04/2006, 16h44
  2. [SQL] Convertir un champ INT en CHAR dans un SELECT ?
    Par webtheque dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/03/2005, 14h45
  3. champ etrange sur DB2
    Par rodolphedj dans le forum ASP
    Réponses: 4
    Dernier message: 19/10/2004, 09h05
  4. [langage] Test sur un caractère
    Par GLDavid dans le forum Langage
    Réponses: 8
    Dernier message: 07/07/2004, 18h03
  5. champ lookup sur querydataSet
    Par freinhar dans le forum JBuilder
    Réponses: 3
    Dernier message: 20/12/2002, 17h29

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