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

Développement SQL Server Discussion :

DateTime dans une requête


Sujet :

Développement SQL Server

  1. #1
    Membre expérimenté
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Points : 1 350
    Points
    1 350
    Par défaut DateTime dans une requête
    Salut,

    J'ai une requête qui met à jour, et dans celle ci ce trouve un champ date de naissance au format datetime. Mon problème et que lorsque je mets à jour, celui ci enregistre 01/01/1900 pourtant je recupère bien la date de naissance.

    voici le code :
    Code asp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    response.write "UPDATE Customers "& _
    		     "SET DateNaissance = "& Cdate(Request.form("dn")) &", Nb_montre  = "& request.form("nbmontre") &", CSP = '"& W &"' "& _
    		     "WHERE Email = '"& request.form("identif") &"'"

    request.form("dn") donne par exemple 30/10/2007 et dans l'enregistrement celui-ci enregistrera 01/01/1900, alors que moi, je voudrais plutôt celle que je recupère.

    Merci d'avance
    Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

    FAQ ASP

  2. #2
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Points : 4 414
    Points
    4 414
    Par défaut
    Ajouter SET DATEFORMAT DMY

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    response.write "DATEFORMAT DMY ; UPDATE Customers "& _
    		     "SET DateNaissance = "& Cdate(Request.form("dn")) &", Nb_montre  = "& request.form("nbmontre") &", CSP = '"& W &"' "& _
    		     "WHERE Email = '"& request.form("identif") &"'"

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  3. #3
    Membre expérimenté
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Points : 1 350
    Points
    1 350
    Par défaut
    Citation Envoyé par WOLO Laurent Voir le message
    Ajouter SET DATEFORMAT DMY
    Tu peux m'en dire plus stp, parce que je débute en sql server merci

    J'ai essayé ceci :
    Code asp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    response.write "set dateformat DMY UPDATE Customers "& _
    				"SET DateNaissance = "& Cdate(Request.form("dn")) &", Nb_montre  = "& request.form("nbmontre") &", CSP = '"& W &"' "& _
    				"WHERE Email = '"& request.form("identif") &"'"

    je n'ai pas de message d'erreur mais il enregistre toujours 01/01/1900
    Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

    FAQ ASP

  4. #4
    Rédactrice

    Avatar de Fleur-Anne.Blain
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 637
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 637
    Points : 6 805
    Points
    6 805
    Par défaut
    Normalement quand SQL Server insère cette date c'est que ta colonne date est définie à NOT NULL mais que tu veux lui insérer une valeur NULL quand meme...
    la culture c'est comme la confiture moins on en a plus on l'étale.

    Mes tutos

  5. #5
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Points : 4 414
    Points
    4 414
    Par défaut
    Enlève le Cdate dans ce cas.

    SET DATEFORMAT DMY indique à SQL Serveur que le format de date en INPUT est DMY (DAY MONTH YEAR).

    Bonne chance

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  6. #6
    Membre expérimenté
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Points : 1 350
    Points
    1 350
    Par défaut
    Lorsque j'ai modifié la table j'ai mis ceci

    Code asp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    sql = "Alter Table Customers "& _
           "ADD DateNaissance DATETIME, "& _
           "Nb_montre INT NULL, "& _
           "CSP varchar(80) NULL"

    Dois-je mettre DateNaissance en DATETIME NULL ??
    Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

    FAQ ASP

  7. #7
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Août 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 730
    Points : 923
    Points
    923
    Par défaut
    tu as 2 solutions

    si tu veux garder des null autorisés tu mets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DateNaissance DATETIME NULL

    tu mets une valeur par defaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DateNaissance DATETIME NOT NULL DEFAULT '01/01/1900'
    Errare humanum est, perseverare diabolicum (Sénèque)

Discussions similaires

  1. Réponses: 1
    Dernier message: 09/04/2013, 10h46
  2. Réponses: 10
    Dernier message: 09/03/2012, 15h38
  3. envoyer un datetime dans une requête
    Par AlKoLiK dans le forum JDBC
    Réponses: 1
    Dernier message: 07/02/2008, 09h02
  4. DateTime dans une requête
    Par kaiser59 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 31/10/2007, 14h24

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