Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Connessione a db mysql

  1. #1
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003

    Connessione a db mysql

    Sto uscendo pazzo.
    Girando un bel pò sul forum ho trovato da scaricare i MyOLEdb3 driver. Scaricati ed installati.
    Ora ho fatto questo script giusto per provarli:
    [supersaibal]<%@ import namespace="System" %>
    <%@ import namespace="System.Data" %>
    <%@ import namespace="System.Data.OleDb" %>

    <script language="C#" runat="server">
    void Page_Load(Object sender, EventArgs e) {

    string MyConn = "Provider=MySQLProv;Data Source=nome_database;User Id=userid;Password=password;";
    string MySQL = "select * FROM aziende";

    OleDbConnection myConn = new OleDbConnection(MyConn);
    //OleDbCommand cmd = new OleDbCommand(MySQL, myConn);

    myConn.Open();

    //cmd.ExecuteNonQuery();

    myConn.Close();

    }
    </script>[/supersaibal]
    Il problema è che l'applicazione così fatta non restituisce nessun errore: continua a caricarsi fino al timeout.
    Che ho sbagliato? :master:

  2. #2

    Re: Connessione a db mysql

    Originariamente inviato da VaLvOnAuTa
    Sto uscendo pazzo.
    Girando un bel pò sul forum ho trovato da scaricare i MyOLEdb3
    Non ho capito cosa hai trovato da scaricare e da dove. Comunque, come detto altre volte, quando e' possibile e' consigliabile utilizzare dataprovider speicifici per il database scelto. Nel caso di mysql esistono vari dataprovider. Uno dei piu' utilizzati e' bytefx http://www.bytefx.com/dotdata2.aspx . Ora mi accorgo che esiste anche una nuova versione (il programmatore del dataprovider bytefx e' entrato a far parte di mysql ab) ufficiale scaricabile dal sito mysql http://dev.mysql.com/downloads/connector/net/1.0.html
    Il problema è che l'applicazione così fatta non restituisce nessun errore: continua a caricarsi fino al timeout.
    Che ho sbagliato?
    Cosa ti aspetti che faccia l'applicazione?
    Dalla query che vedo nel codice, vuoi fare una selezione di record e immagino visualizzarli. Pero' nel codice sembra che vuoi utilizzare (dico sembra xche' le righe sono commentate) un command.executenonquery . Questa funzione del command si usa quando esegui query come una insert, delete o update visto che dopo aver eseguito la query ti ritorna il numero di righe "affette" dalle modifiche. Quindi dovresti modificare il codice e utilizzare un datareader con la funzione del command executereader oppure usare un dataadapter per riempire una datatable.
    Saluti a tutti
    Riccardo

  3. #3
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003

    Re: Re: Connessione a db mysql

    Originariamente inviato da riccardone
    Mi accorgo che esiste anche una nuova versione (il programmatore del dataprovider bytefx e' entrato a far parte di mysql ab) ufficiale scaricabile dal sito mysql http://dev.mysql.com/downloads/connector/net/1.0.html
    Li ho già installati, ma non so come costruire lo script per utilizzarli.

    Originariamente inviato da riccardone
    Cosa ti aspetti che faccia l'applicazione?
    Dalla query che vedo nel codice, vuoi fare una selezione di record e immagino visualizzarli.
    In verità no. Ho commentato apposta. Stavo solo testando la connessione al database, che non avviene, perchè quell'interruzione con conseguente timeout avviene nel momento in cui fa il conn.Open()

  4. #4
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003

    Re: Re: Re: Connessione a db mysql

    Originariamente inviato da VaLvOnAuTa
    Li ho già installati, ma non so come costruire lo script per utilizzarli.
    O meglio so come costruire lo script ma non so quali namespace includere per non farmi restituire un bell'errore

  5. #5

    Re: Re: Re: Connessione a db mysql

    Originariamente inviato da VaLvOnAuTa
    Li ho già installati, ma non so come costruire lo script per utilizzarli.
    non ho ben capito che vuoi dire... stai usando oledb perche' non sai come utilizzare un altro dataprovider? devi aggiungere un riferimento al dataprovider (che e' una dll) nel progetto. Usi visual studio?
    In verità no. Ho commentato apposta. Stavo solo testando la connessione al database, che non avviene, perchè quell'interruzione con conseguente timeout avviene nel momento in cui fa il conn.Open()
    a beh... non era molto chiaro
    Saluti a tutti
    Riccardo

  6. #6
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003

    Re: Re: Re: Re: Connessione a db mysql

    Originariamente inviato da riccardone
    non ho ben capito che vuoi dire... stai usando oledb perche' non sai come utilizzare un altro dataprovider? devi aggiungere un riferimento al dataprovider (che e' una dll) nel progetto. Usi visual studio?
    No.. infatti ho trovato dei tutorial chiarissimi. Ma avevano tutti un difetto di fondo: supponevano che l'utente avesse visual studio per automatizzare il processo di riferimento.

  7. #7
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003
    Ho seguito questo tutorial.
    Ho anche copiato la dll "Microsoft.Data.Odbc.dll" nella cartella bin (C:\Programmi\Microsoft.NET\FrameworkSDK\bin) ma continua a darmi errore di compilazione dicendo che ODBCConnection è un tipo non conosciuto.

  8. #8
    Se utilizzi il Framework 1.1 è già presente il supporto per la connessione ODBC: l'installazione di quella dll nella bin è inutile.

    Devi solo installare i driver MyODBC per permettere l'accesso con questi driver al database MySql vero e proprio.

    Oppure, se vuoi maggiori prestazioni usa i driver ByteFX.Data:
    http://www.aspitalia.com/liste/usag/script.aspx?ID=548

    Ciao
    AZ [Microsoft - .NET MVP]
    Mia Home page: http://ciclismo.sitiasp.it
    Asp.Net community: http://www.aspitalia.com
    Il mio blog: http://blogs.aspitalia.com/az

  9. #9
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003
    Mi sbaglierò, ma per rendere funzionali le dll uscite dal pacchetto che ho scaricato, devo copiarle nella cartella "bin" del framework?
    Perchè se le includo con
    [supersaibal]<%@ Import Namespace="ByteFX.Data.MySqlClient" %>[/supersaibal]
    mi dice
    [supersaibal] Messaggio di errore del compilatore: CS0246: Impossibile trovare il tipo o il nome dello spazio dei nomi "ByteFX". Probabilmente manca una direttiva using o un riferimento a un assembly[/supersaibal]


  10. #10
    Devi sempre copiare le dll esterne nella cartella bin della tua webapplication. Oppure la memorizzi nella GAC, ma in questi casi è inutile.

    Ciao
    AZ [Microsoft - .NET MVP]
    Mia Home page: http://ciclismo.sitiasp.it
    Asp.Net community: http://www.aspitalia.com
    Il mio blog: http://blogs.aspitalia.com/az

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.