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

    Prima connessione a db mysql

    Salve a tutti,

    sono uno sviluppatore java e da poco mi sto affacciando a dot net. Sono abituato ad utilizzare i driver jdbc, quindi, qualsiasi db utilizzo, mi cambia poco o nulla se utilizzo sql standard.

    In C# non esiste qualcosa di simile? Devo connettermi a MySql ed ho scaricato le dll necessarie.
    Se poi campio DB? Cambia anche il codice naturalmente!

    Poi non riesco ad utilizzare i parameters, stile prepared statement java per intenderci, che mi permettono di utilizzare i punti interrogativi e poi passare successivamente i parametri. Come si fa in C#? Perchè il seguente codice non mi funziona?

    codice:
    MySqlConnection connection = new MySqlConnection(MyConString);
                MySqlCommand command = connection.CreateCommand();
                command.CommandText = "INSERT INTO domanda (id_difficolta, id_tipo_domanda, id_categoria, testo, risorsa) VALUES (@id_difficolta, @id_tipo_domanda, @id_categoria, @testo, @risorsa)";
                connection.Open();
    
                command.Parameters.Add("@id_difficolta", MySqlDbType.Int32).Value = domanda.idDifficolta;
                command.Parameters.Add("@id_tipo_domanda", MySqlDbType.Int32).Value = domanda.tipoDomanda;
                command.Parameters.Add("@id_categoria", MySqlDbType.Int32).Value = domanda.idCategoria;
                command.Parameters.Add("@testo", MySqlDbType.String).Value = domanda.testo;
                command.Parameters.Add("@risorsa", MySqlDbType.String).Value = domanda.risorsa;
    
                int c = command.ExecuteNonQuery();
    
                connection.Close();
    Nei mini esempi fatti per capire qualcosa avevo utilizzato Access e i parameters funzionavano. Cosa sbaglio? Va bene la chiocciola?

    Grazie a tutti in anticipo
    Luca

  2. #2
    ciao,

    io stò facendo un programmino con VB2008 che si appoggia a MySQL.
    ti posto una semplice query di salvataggio nel DB. Attenzione alla stringa di connessione perchè i parametri vengono letti da settings e quindi la devi modificare:

    codice:
     Public stringa As String = "Server=" & My.Settings.host & "; Database=" & My.Settings.database & "; Uid= " & My.Settings.username & "; Pwd= " & My.Settings.password & ";"
        Public connessione As New MySqlConnection(stringa)
    poi abbiamo la query vera e propria

    codice:
    Try
                frmMain.connessione.Open()
                Dim salva As String = "INSERT INTO clienti(id, id_categoria, ragione_sociale_1,ragione_sociale_2, indirizzo_1, indirizzo_2,CAP, citta, provincia, codice_fiscale, partita_iva, id_pagamento) VALUES ('NULL', '" & cmbCategoria.SelectedIndex & "', '" & txtRagioneSociale1.Text & "', '" & txtRagioneSociale2.Text & "', '" & txtIndirizzo1.Text & "', '" & txtIndirizzo2.Text & "', '" & txtCAP.Text & "', '" & txtComune.Text & "', '" & txtProvincia.Text & "', '" & txtCF.Text & "', '" & txtPIVA.Text & "', 'NULL');"
                Dim salvataggio As New MySqlCommand(salva, frmMain.connessione)
                salvataggio.ExecuteNonQuery()
                frmMain.connessione.Close()
                frmClienti.dgwClienti.Refresh()
                frmClienti.popola_clienti()
            Catch ex As Exception
                frmMain.connessione.Close()
                MsgBox(ex.Message)
            End Try
    Ricordati di aggiungere il riferimento a Mysql e fare l'imports
    Errare è umano, ma per fare veramente casino ci vuole la password di root

  3. #3

    ma...

    Ti ringrazio ma io voglio utilizzare i parameters
    Luca

  4. #4
    lo so, questo era un esempio di gestione. Questa è una base che puoi espandere con i parameters
    Errare è umano, ma per fare veramente casino ci vuole la password di root

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.