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 :

[débutante]Afficher l'heure ou la date


Sujet :

Développement SQL Server

  1. #1
    Débutant
    Technicien maintenance
    Inscrit en
    Mai 2007
    Messages
    123
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mai 2007
    Messages : 123
    Points : 37
    Points
    37
    Par défaut [débutante]Afficher l'heure ou la date
    J'ai une base de données gérant des activités pour un centre de loisirs. J'ai un petit souci avec ma table activité.

    ACTIVITE(code_activite, #code_sport,description_activite, date_acti, heure_debut, heure_fin)

    Je voudrais que dans la colonne date_acti, il y ai juste une date sans 00:00:00 et que les colonnes heure_debut et heure_fin soient au format heure sans 01/01/1900

    Je travaille sous SQL Server 2000 et c'est une base de données que j'utilise pour une activité pour le BTS. Un activité client/server, avec SQL Server et des bases clientes ACCESS

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Points : 1 745
    Points
    1 745
    Par défaut
    Je voudrais que dans la colonne date_acti, il y ai juste une date sans 00:00:00 et que les colonnes heure_debut et heure_fin soient au format heure sans 01/01/1900
    Il faudra sql serveur 2008 pour avoir des champs date() sans heure et des heures sans date.

    Actuellement, le filtrage se fait à l'affichage : SELECT DAY(Madate),MONTH(Madate)....

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 736
    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 736
    Points : 52 447
    Points
    52 447
    Billets dans le blog
    5
    Par défaut
    Une heure sans date n'a pas de sens... Que ferez vous si une activité démarre à 22h et se termine le lendemain à 1h du matin (film un peu long par exemple) ???

    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/ * * * * *

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 66
    Points : 66
    Points
    66
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Une heure sans date n'a pas de sens... Que ferez vous si une activité démarre à 22h et se termine le lendemain à 1h du matin (film un peu long par exemple) ???

    A +
    Même dans le cas où l'information que l'on souhaite conserver est une durée, indépendamment d'un quelconque point de départ ?

  5. #5
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Points : 13 092
    Points
    13 092
    Par défaut
    Citation Envoyé par Fractaliste Voir le message
    Même dans le cas où l'information que l'on souhaite conserver est une durée, indépendamment d'un quelconque point de départ ?
    oui ! Comment allez-vous stocker des durées de plus de 24 heures ?

  6. #6
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Citation Envoyé par aieeeuuuuu Voir le message
    oui ! Comment allez-vous stocker des durées de plus de 24 heures ?
    Je n'ai jamais eu ce besoin donc je n'y avais jamais songé jusqu'ici mais cela ne me choquerait pas de pouvoir stocker dans un type time quelque chose comme 35:13:23.478 pour stockée une durée. Dommage que cela ne soit pas possible (cela pour faire l'objet d'un autre type de donnée si ça gêne certains).
    Pour datetime par contre, il est tout à fait logique ce la partie time soit limitée à 23:59:59.999999.

    Maintenant c'est vrai que si on a la date de début et la durée, rien n'empêche de calculer la date de fin. Mais bon, quand il y a une tonne de données, ça fait une tonne de calculs qui pourraient être évités...
    Kropernic

  7. #7
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 736
    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 736
    Points : 52 447
    Points
    52 447
    Billets dans le blog
    5
    Par défaut
    Une durée n'a rien à voir avec une date ou une heure. Une durée est une quantité de temps et non pas un repère ponctuel de temps !
    Pour stocker une durée, on utilise un nombre >= 0.
    Exemple durée minute pour un film, durée heure décimale pour une tâche.

    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/ * * * * *

  8. #8
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Une durée n'a rien à voir avec une date ou une heure. Une durée est une quantité de temps et non pas un repère ponctuel de temps !
    Pour stocker une durée, on utilise un nombre >= 0.
    Exemple durée minute pour un film, durée heure décimale pour une tâche.

    A +
    C'est pas faux.
    Kropernic

  9. #9
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Points : 13 092
    Points
    13 092
    Par défaut
    Citation Envoyé par Kropernic Voir le message
    Maintenant c'est vrai que si on a la date de début et la durée, rien n'empêche de calculer la date de fin. Mais bon, quand il y a une tonne de données, ça fait une tonne de calculs qui pourraient être évités...

    Tout dépend des calculs... Si vous avez une date de début et une date de fin pour une liste de taches, et que vous voulez calculer la durée totale du projet... ça fait plutôt des calculs en plus par rapport à la solution avec la durée en minutes (ou heures, secondes, jours...).

    stocker une date de début et une date de fin me parait cependant tout à fait correct, et le choix entre [date début + date fin] ou [date début + durée] peut se faire en fonction du contexte et de l'utilisation qui sera faite de ces informations.

    Mais stocker une durée dans une colonne TIME, c'est inadapté et n'apporte pas grand chose, si ce n'est des difficultés pour les manipuler : vous ne pouvez pas les additionner, donc encore moins les sommer, vous ne pouvez pas dépasser 24h de durée, ...

  10. #10
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Citation Envoyé par aieeeuuuuu Voir le message
    Tout dépend des calculs... Si vous avez une date de début et une date de fin pour une liste de taches, et que vous voulez calculer la durée totale du projet... ça fait plutôt des calculs en plus par rapport à la solution avec la durée en minutes (ou heures, secondes, jours...).

    stocker une date de début et une date de fin me parait cependant tout à fait correct, et le choix entre [date début + date fin] ou [date début + durée] peut se faire en fonction du contexte et de l'utilisation qui sera faite de ces informations.

    Mais stocker une durée dans une colonne TIME, c'est inadapté et n'apporte pas grand chose, si ce n'est des difficultés pour les manipuler : vous ne pouvez pas les additionner, donc encore moins les sommer, vous ne pouvez pas dépasser 24h de durée, ...
    Je suis tout à fait d'accord. Je n'ai d'ailleurs pas dit qu'il fallait stocker une durée dans un colonne TIME, j'ai dit que cela ne me choquerait pas de voir une durée stockée sous la forme HH:mm:ss. Maintenant évidemment que, en l'état, l'utilisation du type TIME n'est pas approprié. Mais si un jour Microsoft nous pond un type durée de ce format, je pense que je l'utiliserais.
    Kropernic

Discussions similaires

  1. [WD17] Afficher l'heure et la date.
    Par manu79 dans le forum WinDev
    Réponses: 18
    Dernier message: 16/09/2013, 21h12
  2. Afficher l'heure et la date en cours
    Par Marley_T dans le forum C
    Réponses: 14
    Dernier message: 06/07/2008, 15h41
  3. Affiche l'heure et la date dans un jLabel
    Par thaundeadboss dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 09/06/2008, 01h10
  4. [Débutant] afficher l'heure du système ?
    Par ibma4 dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 31/07/2007, 17h32
  5. [Débutant] Afficher l'heure
    Par Guillaume602 dans le forum Assembleur
    Réponses: 6
    Dernier message: 10/12/2006, 11h13

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