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 :

Message erreur SQL Server 2008


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2008
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 431
    Par défaut Message erreur SQL Server 2008
    Bonjour,

    je fais un Update sur un tableA (que j'ai sur SQL server 2008 )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    update tableA 
    set somme = select (sum(valeur) 
                                     from tableA a
                                      where a.id = TableA.id )
    where Year(tableA.date) = 2004
    and Month (tableA.date) = 1
    and Day(tableA.date) = 1
    le update se fait correctement pour tous les jours du mois 1 de l'année 2004 sauf pour le jour 3, ça affiche l'erreur suivante :

    Arithmetic overflow error converting numeric to data type numeric.
    Warning: Null value is eliminated by an aggregate or other SET operation.


    le champ "date" de la tableA était renseigné par la fonction Sysdatetime().

    le champ "date" ainsi que les autres champs (de la tableA) du jours 3 sont du même types et sont renseignés comme il l'est pour les autres jours.

    avez vous une idée du msg d'erreur?

    merci d'avance

  2. #2
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut
    Bonjour,

    Il y a de fortes chances que la somme que vous effectuez et que vous essayez de mettre à jour (SUM(valeur)) soit hors limite de la colonne somme de la tableA.

    De plus avec SQL Server 2008 vous pouvez caster votre colonne avec le type DATE pour extraire seulement la date. Le CAST dans ce cas est sargeable:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     ...
    WHERE CAST(tableA.date AS DATE) = '20040101'
    ++

  3. #3
    Membre éclairé
    Inscrit en
    Novembre 2008
    Messages
    431
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 431
    Par défaut
    Citation Envoyé par mikedavem Voir le message
    Bonjour,

    Il y a de fortes chances que la somme que vous effectuez et que vous essayez de mettre à jour (SUM(valeur)) soit hors limite de la colonne somme de la tableA.

    De plus avec SQL Server 2008 vous pouvez caster votre colonne avec le type DATE pour extraire seulement la date. Le CAST dans ce cas est sargeable:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     ...
    WHERE CAST(tableA.date AS DATE) = '20040101'
    ++
    t'avais raison mikedavem .... ca marche nickel maintenant...merci beaucoup à toi

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

Discussions similaires

  1. message d'erreur dans SSIS sql server 2008 R2
    Par le sportif dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 25/04/2014, 16h34
  2. [AC-2003] Erreur lors de la mise à jour d'une table SQL Server 2008
    Par suziwan dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 14/12/2009, 22h06
  3. Erreur lors de l'installation de SQL Server 2008
    Par The-msx dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 24/07/2009, 09h47
  4. Erreur Installation SQL Server 2008 Katmai
    Par jowsuket dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 25/01/2008, 11h40

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