Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [C#] problemi con MySQLDriverCS

    Ciao a tutti,
    premetto che ho iniziato da pochissimo a edermi c# e già stò impazzendo..

    Stò provando a eseguire una semplice SELECT su un DbMysql in locale e ho installato il Data provider MysqlDriverCS ho scritto un paio di righe ma non riesco a capire DAOVE STA L'ERRORE.

    codice:
    using System;
    using MySQLDriverCS;
    
    class ProvaMysql 
    {
    
    	public static void Main() 
    	{
    		try 
    		{
    		MySQLConnection conn = new MySQLConnection(new MySQLConnectionString("127.0.0.1","sitostandard","root","",1000).AsString);
    		conn.Open();
    
    		}
    		catch (MySQLException) { Console.WriteLine("Connessione non riuscita"); }
    
    		try 
    		{
    
    			MySQLCommand res = new MySQLCommand("SELECT * FROM categorie WHERE id_parent = 0", conn);
    			MySQLDataReader dr = res.ExecuteReaderEx();
    
    		}
    		catch (MySQLException) { Console.WriteLine("Errore nella query SQL");  }
    
    		while (dr.Read()) 
    		{
    			Console.WriteLine("Nome categoria = " + dr[2].ToString());
    		}
    
    		conn.Close();
    
    	}
    }

    Qualcuno mi sà spiegare perchè quando eseguo il debug su VS mi dice :
    "il nome conn non esiste nella classe o nello spazio dei nomi ProvaMysql"

    Grazie in anticipo c#isti

  2. #2

    Re: [C#] problemi con MySQLDriverCS

    Originariamente inviato da Satoshy
    ...perchè quando eseguo il debug su VS mi dice :
    "il nome conn non esiste nella classe o nello spazio dei nomi ProvaMysql"
    metti un unico blocco try e catch. In aggiunta: dopo aver letto il datareader chiudilo con dr.close; poi, visto che apri una connection, utilizza il blocco finally (lo metti dopo il catch) per chiudere la connessione con conn.close
    Saluti a tutti
    Riccardo

  3. #3
    Ok avevo usato più try-catch per differenziare degli eventuali errori..(e qui mi sorge un'altro dubbio) ad esempio come riesco a conoscere precisamente che errore/i viene restituito?

    dovrei fare una cosa tipo catch(MySQLexception e) { .. }
    ed analizzare l'oggetto e giusto?

    codice:
    using System;
    using MySQLDriverCS;
    
    class ProvaMysql 
    {
    
    	public static void Main() 
    	{
    		try 
    		{
    			MySQLConnection conn = new MySQLConnection(new MySQLConnectionString("127.0.0.1","sitostandard","root","",1000).AsString);
    			conn.Open();
    
    			MySQLCommand res = new MySQLCommand("SELECT * FROM categorie WHERE id_parent = 0", conn);
    			MySQLDataReader dr = res.ExecuteReaderEx();
    
    			while (dr.Read()) {	Console.WriteLine("Nome categoria = " + dr[2].ToString());	}
    
    			dr.Close();
    		}
    		catch (MySQLException) 
    		{
    			Console.WriteLine("Problemi nella lettura dei dati");
    		}
    		finally
    		{
    			conn.Close();
    		}
    	}
    }
    Il problema rimane potresti dirmi di +? :master:

    Grazie 1000

  4. #4
    Ok ok ho risolto sotto suggerimento.. tnx

    codice:
    class prova MySql
    {
        public static void Main() {
    
           MySqlConnection conn    = null;
           MySqlCommand res        = null;
           MySqlDataReader dr      = null;
    
           try {
              conn = new MySqlConnection( new MySqlConnectionString("127.0.01", "sitostandard", "root", "", 1000).AsString) );
           }
           catch( MySqlException ex ) {
              Console.WriteLine( "Errore connessione" );          
           }
    
           try {
              res = new MySqlCommand( "SELECT * FROM Categorie Where id_parent = 0", conn );
              dr = res.ExecuteReaderEx();
           }
           catch( MySqlException ex ) {
              Console.WriteLine( "Errore nella query" );
           }
    
           while( dr.Read() ) {
              Console.WriteLine( "Nome categoria: " + dr[2].ToString() );
           }
    
           dr = null;
           res.Dispose(); res = null;
           conn.Close; conn = null;
        }
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.