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 :

[SQL2K] Convertir un champ Char Vers un champ Date


Sujet :

MS SQL Server

  1. #1
    Membre du Club Avatar de Sidi-Bou
    Inscrit en
    Septembre 2006
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 89
    Points : 44
    Points
    44
    Par défaut [SQL2K] Convertir un champ Char Vers un champ Date
    Bonne journée
    Comment puis je convertir un champ char vers un champ datetime
    dans sql server

    merci

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 737
    Points
    52 737
    Billets dans le blog
    5
    Par défaut
    CAST(MaColonne AS DATETIME)

    Attention : le format attendu d'une date littérale est le format ISO court, c'est à dire AAAAMMJJ. SI ce n'est pas le cas, modifiez le paramétrage de votre session avec SET DATEFORMAT.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre du Club Avatar de Sidi-Bou
    Inscrit en
    Septembre 2006
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 89
    Points : 44
    Points
    44
    Par défaut
    Merci pour votre reponse
    mais quand j'utilise cast comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    select cast (datemb as datetime)
    from eff3
    le message suivant m'apparait :
    La conversion d'un type de données CHAR en type DATETIME a donné une valeur hors des limites des valeurs de date et d'heure.

  4. #4
    Membre actif
    Avatar de Hatchepsout
    Inscrit en
    Octobre 2006
    Messages
    170
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 170
    Points : 222
    Points
    222
    Par défaut
    salut,

    Pour la conversion de type pas de probleme mais tu vas avoir des soucis avec le contenu.
    SQL sauvegarde les dates sous la forme 'YYYY-MM-DD' et les DATETIME 'YYYY-MM-DD HH:ii:SS'

    Pour modifier le type de la colonne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE table MODIFY col DATE;
    " Ce n'est pas parce que les choses sont difficiles que nous n'osons pas, c'est parce que nous n'osons pas qu'elles sont difficiles. "

    Mon Pays

  5. #5
    Membre du Club Avatar de Sidi-Bou
    Inscrit en
    Septembre 2006
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 89
    Points : 44
    Points
    44
    Par défaut
    Est ce que je ne pourrais
    pas avoir une solution sans changer la colonne de ma table
    car j'en ai besoin

  6. #6
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Bonjour,

    kajol : attention, tes conseils et ta syntaxe ne s'appliquent pas à MS SQL Server. Il n'y a pas de type date dans SQL Server, seulement du datetime, et la syntaxe du ALTER TABLE n'a pas de MODIFY.

    Sidi-Bou : comment sont stockées tes dates dans ta colonne ? Es-ce toujours au même format, ou y a-t-il des changements. La saisie de la valeur est-elle faite à la main sans contrôle ?
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  7. #7
    Membre du Club Avatar de Sidi-Bou
    Inscrit en
    Septembre 2006
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 89
    Points : 44
    Points
    44
    Par défaut
    Le format date de mes tables est datetime
    mais je veux importer des dates externes d'une base db2
    de type caractere et je vais les convertir en datetime
    merci

Discussions similaires

  1. Concaténation d'un champ char avec un champ integer
    Par Bram2 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 04/05/2010, 16h20
  2. Convertir un champ XML vers un format relationnel
    Par coryan dans le forum Développement
    Réponses: 3
    Dernier message: 05/11/2009, 17h09
  3. Réponses: 2
    Dernier message: 18/03/2008, 16h07
  4. Copier un champ calculé vers un champ fixe
    Par locweb dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 24/08/2007, 09h19
  5. Transformer un champ CHAR en décimal
    Par ALLB dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 19/07/2004, 13h59

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