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 :

Récupération date et la mettre dans une requête sql


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2013
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2013
    Messages : 44
    Par défaut Récupération date et la mettre dans une requête sql
    Bonjour,

    Je suis en cours de développement d'une application c# où je travaille sur deux bases de données sur deux serveurs différents.
    Je me connecte sur le premier serveur pour récupérer la date : comme ceci j'arrive à l'afficher sur le form.
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    con_date = new OdbcConnection();
    con_date.ConnectionString = MaConnexionMysql.ConnexionString;
    con_date.Open();
    adap_date = new OdbcDataAdapter("Select Max(Dateliv) from details", con_date);
    ds_date = new System.Data.DataSet();
    adap_date.Fill(ds_date);
    DataTable resultat = ds_date.Tables[0];
    Ensuite je me connecte sur le deuxième serveur pour afficher les données par rapport à la date que j'ai récupéré
    donc le sql que j'écris "Select * from livraison" que je veux filtrer par la date que j'ai récupéré dans le premier code :

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    con_dds = new OdbcConnection();
    con_pds.ConnectionString = MaConnexiondds.ConnexionString;
    con_pds.Open();
    adap_pds = new OdbcDataAdapter("Select * from livraison where datarr>="+resultat+" order by etb", con_dds);
    ds_dds = new System.Data.DataSet();
    adap_dds.Fill(ds_dds);
    dataGridView1.DataSource = ds_dds.Tables[0];

    Quand je lance mon application j'ai l'erreur suivante

    {"ERROR [42000] [SCO Vision][ODBC Driver][Informix]A syntax error has occurred."}


    PS: Sachant que quand je lance la requête sans filtre de date ca marche.

    Quelqu'un pour m'aider ?

    Merci beaucoup

  2. #2
    Membre Expert Avatar de ed73170
    Homme Profil pro
    Développeur indépendant
    Inscrit en
    Mai 2009
    Messages
    765
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur indépendant

    Informations forums :
    Inscription : Mai 2009
    Messages : 765
    Par défaut
    Tu essayes de mettre une Datatable (resultat) dans une chaîne SQL, cela n'a aucune chance de fonctionner.

    Regarde la syntaxe des dates pour MySql ou mieux, utilises une requête paramétrée.

  3. #3
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2013
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2013
    Messages : 44
    Par défaut
    Merci pour ta réponse .
    tu veux dire quoi par requette paramétré?.
    Merci

  4. #4
    Membre émérite
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Par défaut
    Salut,

    Requêtes paramétrées en plus cela te protège contre les injections SQL.

  5. #5
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2013
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2013
    Messages : 44
    Par défaut
    Oki merci l'ami

  6. #6
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    Un détail : selon ton SGBD, tu ferais mieux d'utiliser un serveur lié (ou DBLink) pour intégrer la première requête dans la seconde. Ce sera à la fois plus performant, et plus simple/propre.

Discussions similaires

  1. [MySQL] Récupération d'une valeur d'un formulaire pour la mettre dans une requête
    Par lala24 dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 30/04/2010, 17h42
  2. Comment insérer la date actuelle dans une requête SQL ?
    Par AMINE07 dans le forum Bases de données
    Réponses: 7
    Dernier message: 15/11/2007, 16h47
  3. Récupération du nom de colonne dans une requête
    Par Devlop++ dans le forum Access
    Réponses: 4
    Dernier message: 27/07/2007, 16h48
  4. Constante Date dans une requête SQL
    Par tarbala dans le forum Autres SGBD
    Réponses: 1
    Dernier message: 25/04/2006, 16h24

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