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

Rust Discussion :

[RUST 1.71.1][windows] problème de compréhension rust/mysql


Sujet :

Rust

  1. #1
    Membre à l'essai
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Janvier 2018
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Janvier 2018
    Messages : 19
    Points : 19
    Points
    19
    Par défaut [RUST 1.71.1][windows] problème de compréhension rust/mysql
    Bonjour

    Je me tourne vers vous pour un avoir un éclairage sur le fonctionnement du crate mysql [mysql ="23.0.1"] suite à des recherche j'ai fait le bout fonctionnel de code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    use mysql::Pool;
    use mysql::prelude::*;
     
    #[derive(Debug)]
    struct RcpSql {
        a: String,
        b: i32,
        c: i32,
    }
     
    fn read_sql(){
     
        let url = "mysql://test_it:yes@localhost:3306/db_test";
        let pool = Pool::new(url).expect("not cool the db link is down");
        let mut conn = pool.get_conn().expect("am not connected");
     
        // aller lire l'ensemble des ligne de la table
        let vues = conn.query_map(
            "SELECT * FROM test_it",| (a,b,c)|{
                RcpSql {a,b,c}
            }
        ).expect("I found nothing");
     
        // envoyer le resulat dans un vecteur
        println!("{:?}",vues);
    }
     
    fn main(){
     
        read_sql();
    }
    je récupère bien ce que je veux mais j'ai un qui me dit que mes variables a,b,c ne sont jamais lues

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    warning: fields `a`, `b`, and `c` are never read
     --> src\main.rs:6:5
      |
    5 | struct RcpSql {
      |        ------ fields in this struct
    6 |     a: String,
      |     ^
    7 |     b: i32,
      |     ^
    8 |     c: i32,
      |     ^
      |
      = note: `RcpSql` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
      = note: `#[warn(dead_code)]` on by default
     
    warning: `readdb` (bin "readdb") generated 1 warning
        Finished dev [unoptimized + debuginfo] target(s) in 2.09s
         Running `target\debug\readdb.exe`
    [RcpSql { a: "test1", b: 1, c: 2 }, RcpSql { a: "test2", b: 22, c: 33 }, RcpSql { a: "test3", b: 7, c: 8 }, RcpSql { a: "test4", b: 44, c: 55 }]
    Si j'essaye de supprimer un morceau ou de modifier la je génère des erreurs bloquantes

    Avez-vous une lueur d'explication pour moi ?

    Merci Beaucoup

  2. #2
    Expert éminent
    Avatar de Pyramidev
    Homme Profil pro
    Développeur
    Inscrit en
    Avril 2016
    Messages
    1 471
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 471
    Points : 6 110
    Points
    6 110
    Par défaut
    Bonjour,

    Citation Envoyé par maoppi Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      = note: `#[warn(dead_code)]` on by default
    C'est un avertissement qui sert normalement à détecter du code mort, mais qui est souvent un faux positif quand on est en train d'ajouter progressivement du code.

    Pour le cacher, tu peux ajouter la ligne #![allow(dead_code)] en haut de ton fichier. Tu pourras toujours enlever cette ligne plus tard.

    Citation Envoyé par maoppi Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    warning: fields `a`, `b`, and `c` are never read
    [...]
      = note: `RcpSql` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
    Traduction : Les variables `a`, `b` et `c` ne sont jamais lues… Bon, d'accord, elles sont lues, mais seulement via le trait `Debug` (qui permet de compiler ta ligne println!("{:?}",vues);), donc l'avertissement s'applique quand même.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Janvier 2018
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Janvier 2018
    Messages : 19
    Points : 19
    Points
    19
    Par défaut Merci
    C'est justement ce que je cherchais à comprendre, il y un une différence entre l'utilisation des variables et l'affichage en mode débug.

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

Discussions similaires

  1. [Débutant] problème de compréhension
    Par Sylvester dans le forum Général Java
    Réponses: 18
    Dernier message: 21/07/2005, 09h16
  2. Réponses: 5
    Dernier message: 11/04/2005, 10h21
  3. [C#] Problème de compréhension de System.Convert ET Provider
    Par papouAlain dans le forum Windows Forms
    Réponses: 5
    Dernier message: 18/11/2004, 21h52
  4. onclipevent (problème de compréhension)
    Par stephane eyskens dans le forum Flash
    Réponses: 8
    Dernier message: 24/09/2003, 15h09
  5. Problème de compréhension des ensembles
    Par Cornell dans le forum Langage
    Réponses: 6
    Dernier message: 07/02/2003, 22h07

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