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

SQL Oracle Discussion :

Données chaines ou binaires seront tronquées


Sujet :

SQL Oracle

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 31
    Points : 12
    Points
    12
    Par défaut Données chaines ou binaires seront tronquées
    Bonjour,

    Avec du code ASP, je met à jour une table dans SQL Server 2000, et notament un champ varchar(50). Malheureusement, 1 fois sur 10 j'ai l'erreur "Les données chaines ou binaires seront tronquées". En général, ca arrive sur des valeurs comme "12.08". Si je réduis le nombre de caractères de cette valeur, la mise à jour se passe bien. Sinon elle bug.
    J'ai vérifier la taille du champ (donc = 50).

    J'espère avoir été suffisament claire, et que quelqu'un puisse m'aider.

    En tout cas merci d'avance pour vos réponses.

    Bonne journée

  2. #2
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 38
    Points : 47
    Points
    47
    Par défaut
    Bonjour,

    Arf arf SQL SERVER, je te conseille de poser la question dans le forum dédié
    Mais sinon je dirai de jeter un oeil du coté des formats des champs utilisés, genre float, double et compagnie. Peut etre que les nombres réels sont stockés sur plusieurs caractères.
    Pas mieux pour le moment, bonne journée

  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 770
    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 770
    Points : 52 726
    Points
    52 726
    Billets dans le blog
    5
    Par défaut
    Lorsque vous créez une table, la définition de ligne de la table doit "rentrer" dans la limite prévue qui est fixée dans SQL Server à 8060, c'est à dire que les données de chaque ligne d'une table doivent rentrer dans une page (8Ko).
    Si vous concevez des colonnes de votre table avec des tailles variables (types varchar, nvarchar, varbinary...) et que ces tailles variables sont susceptible de contenir des valeurs dépassant cette limite alors MS SQL Server vous laissera créer la table mais vous mettra un warning.
    Si vous tentez de saisir une ligne qui dépasse la capacité, alors il vous jettera.

    A noter que des lignes de 8 Ko, c'est horrible et généralement signe d'un modèle de données pas maitrisé et contribue à générer des performances médiocres au mieux !

    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 à l'essai
    Inscrit en
    Juin 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 31
    Points : 12
    Points
    12
    Par défaut
    Bonjour et merci de vos réponses.
    Alors vu que la valeur de mon champ ne dépasse pas 5 caractères, j'ai modifié le type. à la place de varchar(50) j'ai mis char(5).

    l'erreur n'est pas réapparue depuis, mais vu que ce n'était déja pas systématique, j'attend un peu avant de valider.

    merci pour votre aide, je vous tiendrai informé.

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 31
    Points : 12
    Points
    12
    Par défaut
    Bonjour,
    Depuis ce changement de type, je n'ai plus eu d'erreur.
    On peut fermer le sujet.

    Merci de votre aide.

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

Discussions similaires

  1. Les données de chaîne ou binaires seront tronquées.
    Par helios77 dans le forum Développement
    Réponses: 1
    Dernier message: 23/02/2012, 14h13
  2. Les données chaîne ou binaires seront tronquées
    Par ecoinfo dans le forum ASP.NET
    Réponses: 3
    Dernier message: 12/02/2009, 16h04
  3. Convertir une chaine en binaire
    Par marmarbenh dans le forum Entrée/Sortie
    Réponses: 7
    Dernier message: 11/12/2007, 17h43
  4. [C# 2.0] Base de données versus fichier binaire.
    Par Pierre8r dans le forum Windows Forms
    Réponses: 1
    Dernier message: 12/07/2006, 21h06
  5. Type de données chaines de caractères
    Par krest dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 26/07/2005, 17h06

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