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 :

erreur mise a jour


Sujet :

MS SQL Server

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    381
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Maroc

    Informations forums :
    Inscription : Novembre 2007
    Messages : 381
    Points : 180
    Points
    180
    Par défaut erreur mise a jour
    Bonjour,
    je fais une mise a jour pour une table et il me donne cette erreur :
    Server: Msg 8115, Level 16, State 2, Line 1
    Arithmetic overflow error converting expression to data type int.
    The statement has been terminated.
    j'utilise SQL SERVER 2000.
    voila ma requete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    update finances set encoursfr=(cahtk2006*(100+tva/100))/4/100 where cahtk2006 is not null and cahtk2007 is null
    je fais une autre requete et ca marche, c bizzare parce que les champs sont du meme type et taille.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    update finances set encoursfr=(caht2007*(100+tva/100))/4/100 where cahtk2007 is not null

  2. #2
    Membre émérite Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Points : 2 845
    Points
    2 845
    Par défaut
    Si tu lances juste la requête de sélection, avec en where :
    WHERE TaFormule > 2^32

    ça te renvoie des trucs ?
    (t'avais peut être des valeurs aberrantes en 2006...)

  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 862
    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 862
    Points : 53 015
    Points
    53 015
    Billets dans le blog
    6
    Par défaut
    Un simple dépassement arithmétique du calcul... Rien d'anormal.

    pour voir, essayez :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    UPDATE finances 
    SET encoursfr = CAST(CAST(cahtk2006 AS BIGINT) * (100 + CAST(tva AS BIGINT) / 100 ) / 4 / 100  AS INT)
    WHERE cahtk2006 IS NOT NULL 
    AND cahtk2007 IS NULL
    A +

Discussions similaires

  1. Erreur mise a jour windows vista
    Par flojo dans le forum Windows Vista
    Réponses: 4
    Dernier message: 07/02/2009, 15h01
  2. erreur lors de mise a jour?
    Par chakala dans le forum Wildfly/JBoss
    Réponses: 7
    Dernier message: 03/05/2007, 07h58
  3. Réponses: 3
    Dernier message: 23/08/2006, 15h27
  4. Réponses: 2
    Dernier message: 20/04/2006, 17h53
  5. [ADO] [Mise a jour ] Erreur
    Par hamed dans le forum Bases de données
    Réponses: 7
    Dernier message: 13/03/2005, 19h16

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