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

C# Discussion :

probleme requete sql select


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudient ingénieur système d'information mobile
    Inscrit en
    Mars 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudient ingénieur système d'information mobile

    Informations forums :
    Inscription : Mars 2007
    Messages : 131
    Par défaut probleme requete sql select
    Bonjour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
                string repertoire_a_supprime = "";
     
                SqlDataAdapter adapter = new SqlDataAdapter(" select repertoire from fichier where nom='" + repertoire_a_supprime + "'", Classe_methode_statique.con);
     
    // issi comment récupéré la valeur
     
                System.IO.File.Delete(reprtoire;
    comment extraire la repertoire du tableaux pour surprime le fichier ?
    Merci.

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 200
    Par défaut
    utilises un datareader plutot qu'un dataadapter
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    J'aimerais bien comprendre pourquoi 90% des débutants se croient obligés d'utiliser des DataAdapter, et ne savent pas utiliser un DataReader
    Ca fait des années que cette question me turlupine : où est ce tutoriel débile qui apprend à utiliser un DataAdapter même pour récupérer une seule valeur ?!


  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 200
    Par défaut
    à mon avis c'est les 3/4 des tutoriels, qui expliquent : un command, un dataadapter, un dataset et un datagridview ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Citation Envoyé par Tomlev
    J'aimerais bien comprendre pourquoi 90% des débutants se croient obligés d'utiliser des DataAdapter, et ne savent pas utiliser un DataReader
    C'est marrant j'avais juste l'impression inverse

    Il faut dire que dans 80% des cas un DataAdapter c'est quand meme plus pratique qu'un DataReader

    Et dans 15% du reste quand on veut juste recuperer une donnée on peut faire un executeScalar

    Personellement je n'utilise le datareader que quand je dois recuperer un stream de données binaires comme des images ou de la musique (et chaque fois je peste contre ceux qui on jugé utile de mettre de tels fichiers en DB)

  6. #6
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 200
    Par défaut
    comme quoi c'est une question d'habitude ...
    on a des dizaines de milliers de lignes de code et personne dans l'équipe de sait à quoi sert le dataadapter ^^
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par olibara Voir le message
    Il faut dire que dans 80% des cas un DataAdapter c'est quand meme plus pratique qu'un DataReader

    Et dans 15% du reste quand on veut juste recuperer une donnée on peut faire un executeScalar
    Je ne pense pas qu'on puisse vraiment donner des proportions chiffrées, ça dépend complètement des projets... selon les cas, l'un est plus pratique que l'autre, c'est tout.

    Mais quand c'est pour récupérer une valeur, ou même une ligne de données, utiliser un DataAdapter, c'est vraiment sortir l'artillerie lourde pour écraser une mouche.

    D'autre part, le mode déconnecté (DataAdapter + DataSet) suppose de charger toutes les données en mémoire, ce qui n'est pas forcément adapté si tu as beaucoup de données à traiter. Pour un processus de type "batch" qui doit traiter des millions d'enregistrement, tu es pratiquement obligé d'utiliser un DataReader, ou alors tu vas utiliser une quantité monstrueuse de mémoire...

    Mais ce qui m'agace le plus, c'est quand je vois quelqu'un qui crée un DataAdapter, lui affecte une SelectCommand, puis utilise la commande en faisant adapter.SelectCommand.ExecuteReader().... ça prouve vraiment qu'il a rien compris à ce qu'est un DataAdapter

    Bref, je ne condamne pas les DataAdapter en tant que tels, je critique seulement leur utilisation à mauvais escient, très fréquente chez les débutants...

    Citation Envoyé par olibara Voir le message
    (et chaque fois je peste contre ceux qui on jugé utile de mettre de tels fichiers en DB)
    Tu n'as pas toujours d'autres options... par exemple si la DB est distante et que tu n'as pas accès au système de fichier distant, mettre les images dans la DB est une bonne solution.


    Bref, tout ça ne fait pas beaucoup avancer le problème de yassin123441
    D'ailleurs, dans ce cas il n'y a même pas besoin de DataReader, il suffit de faire un ExecuteScalar sur la commande puisqu'il n'y a qu'une valeur à récupérer... voilà le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
                SqlCommand command = new SqlCommand("select repertoire from fichier where nom='" + repertoire_a_supprime + "'", Classe_methode_statique.con);
                string repertoire = command.ExecuteScalar() as string;
                System.IO.File.Delete(repertoire);
    Soit dit en passant, évite de construire des chaines par concaténation... Avec ce code, si repertoire_a_supprimer contient une apostrophe, la commande générée sera incorrecte et causera une erreur. Utilise plutôt des requêtes paramétrées comme expliqué dans ce tuto

Discussions similaires

  1. Probleme Requete SQL SELECT
    Par paulo6907 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 28/10/2006, 11h07
  2. [POSTGRESQL] Requete SQL SELECT
    Par angusyoung34 dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 18/02/2006, 09h30
  3. probleme requete SQL
    Par grochenel dans le forum Langage SQL
    Réponses: 7
    Dernier message: 12/12/2005, 09h26
  4. [MySQL] probleme requete sql et php
    Par digger dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 10/10/2005, 14h15
  5. probleme requete sql
    Par Shosho dans le forum Langage SQL
    Réponses: 12
    Dernier message: 03/05/2005, 09h25

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