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 :

Requete (débutant)


Sujet :

MS SQL Server

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 3
    Points : 2
    Points
    2
    Par défaut [RESOLU] Requete (débutant)
    bONJOUR

    j'ai une base du style : code;designation;prix;codebarre
    j'ai un fichier txt du sytle : code;codebarre

    vous l'aurez devinez, je veux mettre à jour les codes barres de ma base

    merci de votre réponse à un pauv' débutant qui rame !

    Korrigan22

  2. #2
    Expert éminent
    Homme Profil pro
    Big Data / Freelance EURL
    Inscrit en
    Mars 2003
    Messages
    2 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Big Data / Freelance EURL

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 124
    Points : 7 291
    Points
    7 291
    Par défaut
    Faut plus détailler ta question...et ton titre. "Requête débutant" cela n'incite pas à regarder ta question.

    Utilises la partie DTS de SQL server pour charger ton fichier texte dans une table que je vais appeler T_code_barre_maj. Il y a des assistants : Outils/assistants/assistant importation DTS. Choisi "text file" tout en bas de la liste et non Microsoft text qui est là pour les fichiers textes en ODBC.

    Ensuite ou bien tu utilises DTS ou bien tu utilises SQL pour mettre à jour ta table (et non base) que je vais appeler T_article_liste (merci de donner dans ta demande des noms de tables, même bidons, pour qu'on s'y retrouves).

    En SQL tu utilises la fonction UPDATE:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    UPDATE T_article_liste 
    SET codebarre=T_code_barre_maj.codebarre
    FROM T_code_barre_maj
    WHERE T_article_liste.code=T_code_barre_maj.code

  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 896
    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 896
    Points : 53 126
    Points
    53 126
    Billets dans le blog
    6
    Par défaut
    Bonjour,


    plutôt sue d'utiliser DTS qui ne sera plus supporté dans les prochaines versions (MS SQL Server 2005) utilise la commande BULK INSERT, mille fois plus rapide et efficace que DTS.

    Insère donc dans une table temporaire de transit, puis fait ton UPDATE.

    A +

  4. #4
    Expert éminent
    Homme Profil pro
    Big Data / Freelance EURL
    Inscrit en
    Mars 2003
    Messages
    2 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Big Data / Freelance EURL

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 124
    Points : 7 291
    Points
    7 291
    Par défaut
    et ça sera remplacé par quoi ?

    On vient de faire tout un projet en DTS...(à mon corps défendant).

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par phili_b
    Faut plus détailler ta question...et ton titre. "Requête débutant" cela n'incite pas à regarder ta question.

    Utilises la partie DTS de SQL server pour charger ton fichier texte dans une table que je vais appeler T_code_barre_maj. Il y a des assistants : Outils/assistants/assistant importation DTS. Choisi "text file" tout en bas de la liste et non Microsoft text qui est là pour les fichiers textes en ODBC.

    Ensuite ou bien tu utilises DTS ou bien tu utilises SQL pour mettre à jour ta table (et non base) que je vais appeler T_article_liste (merci de donner dans ta demande des noms de tables, même bidons, pour qu'on s'y retrouves).

    En SQL tu utilises la fonction UPDATE:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    UPDATE T_article_liste 
    SET codebarre=T_code_barre_maj.codebarre
    FROM T_code_barre_maj
    WHERE T_article_liste.code=T_code_barre_maj.code
    Bonjour

    Merci de ton aide ... j'ai un message d'erreur à l'analyse de ma requête .....

    UPDATE a échoué car les instructions SET suivantes comportent des parametres incorrects :'ARITHABORT'
    Contexte : erreur lors de l'appel de GetColumnInfo. Votre fournisseur ne prend pas en charge toutes les interfaces/methodes requises par DTS

    Je repose les bases :

    table de base = F_ARTICLE
    champ : AR_Ref = la référence
    champ : AR_CodeBarre = le code barre

    ma table provisoire : MAJCODEBARRE
    champs : Ref = la rérérence
    Champs :CodeBarre = le code barre

    ma requete :

    UPDATE F_ARTICLE

    SET AR_CodeBarre=MAJCODEBARRE.CodeBarre
    FROM MAJCODEBARRE
    WHERE F_ARTICLE.AR_Ref=MAJCODEBARRE.Ref


    voilà
    merci

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 896
    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 896
    Points : 53 126
    Points
    53 126
    Billets dans le blog
    6
    Par défaut
    Essaye :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    UPDATE T_article_liste
    SET    codebarre=T_code_barre_maj.codebarre
    FROM   T_article_liste AL
           INNER JOIN T_code_barre_maj CBM
                 ON AL.code = CBM.code
    A +

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    SALUT

    çà marche, sur la requete de phili_b, il manquait simplment la formule 'arithabort on' au début

    merci à tous

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/08/2009, 01h00
  2. [Débutant] requete entre plusieurs tables
    Par xufux dans le forum Langage SQL
    Réponses: 2
    Dernier message: 10/08/2005, 14h00
  3. Requete pour un débutant
    Par sqlnoob dans le forum Langage SQL
    Réponses: 3
    Dernier message: 20/05/2005, 08h55
  4. [débutants] pb de requete
    Par raul83 dans le forum Langage SQL
    Réponses: 18
    Dernier message: 01/10/2004, 18h05
  5. [Débutante]Sous requete
    Par mimi74 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 19/07/2004, 14h02

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