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 :

Copie et cast bancal


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif Avatar de Nako_lito
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2008
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 793
    Par défaut Copie et cast bancal
    Bonjour a tous,

    j'ai une requette SQL qui me permet
    - de copier l'intégralité d'une table dans une autre (OK)
    - de convertir deux colonnes nvarchar en float et de copier les resultat dans deux nouvelle colonnes.

    Ma requette donne ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    delete from table_product
     
    DBCC CHECKIDENT ('table_product', RESEED, 0)
     
    INSERT INTO Table_Product
                          (MARQUE, FOURNISSEUR, DESCRIPTION, REF_CONSTRUCTEUR, TARIF_PUBLIC_VARCHAR, TARIF_PRIVATE_VARCHAR)
    SELECT     Marque, Revendeur, DescriptionTotale, RefConstructeur, PrixPublicHT, PrixAchatHT
    FROM         tableEntiere
     
    update table_product set TARIF_PRIVATE_VARCHAR = 0 where TARIF_PRIVATE_VARCHAR is null
    update table_product set TARIF_PUBLIC_VARCHAR = 0 where TARIF_PUBLIC_VARCHAR is null
    update table_product set TARIF_PRIVATE=cast(replace(TARIF_PRIVATE_VARCHAR,',','.') as float)
    update table_product set TARIF_PUBLIC=cast(replace(TARIF_PUBLIC_VARCHAR,',','.') as float)
    Lorsque j'execute, j'ai le message d'erreur suivant:

    Msg 8114, Niveau 16, État 5, Ligne 12
    Erreur de conversion du type de données nvarchar en float.
    Je n'arrive pas a isoler le probleme car pour moi la requette est juste.
    Merci de votre aide par avance.

  2. #2
    Membre très actif Avatar de Nako_lito
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2008
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 793
    Par défaut
    En fait, c'est bon, je viens de comprendre: => dans la colonne a convertir y'avais des chaine de caractere. et quand je les supprime ca fonctionne.

    Existe t'il une requette pour supprimer d'une liste toutes les lignes ou il y a du texte?

  3. #3
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Nako_lito Voir le message
    Existe t'il une requette pour supprimer d'une liste toutes les lignes ou il y a du texte?
    Toutes les lignes ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TRUNCATE TABLE ma_table;

  4. #4
    Membre très actif Avatar de Nako_lito
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2008
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 793
    Par défaut
    en fait j'ai une colonne ou il y a des chiffres et parfois du texte.

    19.4
    22.4
    12.0
    wawa
    salut
    89.4
    etc etc...

    je voudrais supprimer toute les lignes ou il y a du texte (en l'occurence wawa et salut)

  5. #5
    Membre très actif Avatar de Nako_lito
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2008
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 793
    Par défaut
    Décidement je m'épate tout seul, j'ai résolu mon probleme.

    Alors pour info la requette qui permet de supprimer toute trace de lettre dans une colonne est la suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    delete from table
    where champ like '%[A-Z]%'

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

Discussions similaires

  1. [interface] Copie + Cast de collection
    Par ZaaN dans le forum C#
    Réponses: 1
    Dernier message: 10/09/2008, 11h51
  2. Probleme de cast en constructeur copy.
    Par hickscorp dans le forum C++
    Réponses: 13
    Dernier message: 23/08/2006, 14h06
  3. Protéger une disquette contre la copie
    Par benzaza dans le forum Assembleur
    Réponses: 20
    Dernier message: 16/01/2005, 10h42
  4. Copie de fichier
    Par Bjorn dans le forum C
    Réponses: 4
    Dernier message: 11/06/2002, 15h23
  5. Peux t'on créer une copie locale de l'objet partagé?
    Par Anonymous dans le forum CORBA
    Réponses: 8
    Dernier message: 16/04/2002, 16h20

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