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

    select su mysql con vb.net

    Ciao Ragazzi

    sto facendo un pò di prove, non voglio utilizzare i wizard di vb.net 2008 ma voglio imparare a manipolare da solo i dati in un database MySql

    Ho fatto una piccola applicazione di prova e riesco a connettermi e a fare una insert
    per connettermi uso questa funzione (posto mtutti i passaggi perchè non ho trovato molto in giro di chiaro e immediato e quindi queste cose potrebbero aiutare altri) chiaramente le variabili sono dichiarate e fin qui funziona tutto


    Function ConnectToDB() As Boolean
    Try

    stringaconn = "SERVER=localhost; PORT=3306; User Id=root; Password=1234; Database=prova;"


    objconn = New MySqlConnection(stringaconn)
    objconn.Open()

    Catch ex As MySqlException
    MsgBox(ex.Message, MsgBoxStyle.Information)
    Return False
    End Try
    End Function


    Function DisconnectDB() As Boolean

    Try
    objconn.Close()
    Catch ex As Exception
    MsgBox(ex.Message, MsgBoxStyle.Information)
    Return False

    End Try

    End Function

    ' poi uso questa funzione per fare l'inserimento di un nuovo record e popolare la tabella per velocità le variabili le scrivo nella sql e non le prendo da campi nel form



    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click



    ConnectToDB()
    stringasql = "Insert into TEST(test) values('HELLO WORLD!')"
    objcomm = New MySqlCommand(stringasql, objconn)

    MsgBox("Inserimento effettuato con successo")
    DisconnectDB()

    End Sub


    Fino a qui funziona tutto alla grande!!! Riesco ad inserire, eliminare e aggiornare.


    ora vorrei fare una select sul db e assegnare ad un campo TEXT che metto nel form il valore del campo Test del database e visualizzarlo quindi nel form

    ho provato con questo codice ma chiaramente sbaglio qualcosa e non succede niente:



    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    ConnectToDB()

    stringasql = "Select * From TEST(test) values(" & Me.TextBox1.Text & ")"
    objcomm = New MySqlCommand(stringasql, objconn)

    DisconnectDB()

    End Sub

    avete qualche idea?



  2. #2

    up

    ragazzi davvero nessuna idea?



  3. #3
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244

    Re: up

    Originariamente inviato da aledg
    ragazzi davvero nessuna idea?
    Ho una curiosità: ma dove l'hai letta questa istruzione?
    codice:
    stringasql = "Select * From TEST(test) values(" & Me.TextBox1.Text & ")"

  4. #4

    non l'ho letta

    lo so che è sbagliata...l'ho anche scritto tu sai come aiutarmi ? immagino di si visto che sai riconoscere una sql sbagliata...ahaha


  5. #5

    up

    ragazzi non mi abbandonate...


  6. #6
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Non è questione di abbandonarti.

    Il fatto che tu scriva una stringa SQL così astrusa, denota che non hai la minima idea di cosa stai facendo, per cui qualsiasi aiuto è inutile, perchè non saresti in grado di capirlo.

    Ti conviene studiarti prima un po' di SQL per capire come funziona.
    Google aiuta tantissimo perchè di guide sul SQL ce ne sono a iosa.

    http://lmgtfy.com/?q=sql+select


  7. #7

    up

    no ascolta la stringa sql che ho scritto sopra era solo un test che avevo fatto sapendo di sbagliare lo so benissimo che non ha senso spervao solo di far capire meglio cosa volevo fare, e infatti l'ho scritto che sapevo di sbagliare, con vbscript in asp lavoro perfettamente da anni quindi conosco le sql, ma no potendo creare oggetti recordset (o meglio non sapendo come si fa) in vb.net non saprei come attribuire a delle variabili il valore dei campi.

    Riesco ad utilizzare tutte le funzioni del database con ado.net e i wizard di vb.net e a filtrare con le sql tranquillamente, quello che volevo capire è semplicemente come assegnare ad una variabile pippo il valore del campo test senza wizard. Prova a scrivermelo non penso di essere così tonto da non capirlo, sicuramente la stringa sql potrebbe essere anche semplicemente questa:

    sql="SELECT * FROM TEST"

    oppure

    sql="SELECT test FROM TEST"

    e poi come associo i campi del db alle variabili?
    in vbscript farei un oggetto adobdb così

    Set rs = Server.CreateObject("ADODB.RECORDSET")

    e poi assocerei ad ogni campo la variabile

    pippo=rs("test")

    vorrei imparare a fare una cosa simile non mi sembra di chiedere molto.


  8. #8
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244

    Re: up

    Originariamente inviato da aledg
    no ascolta la stringa sql che ho scritto sopra era solo un test che avevo fatto sapendo di sbagliare lo so benissimo che non ha senso spervao solo di far capire meglio cosa volevo fare, e infatti l'ho scritto che sapevo di sbagliare, con vbscript in asp lavoro perfettamente da anni quindi conosco le sql, ma no potendo creare oggetti recordset (o meglio non sapendo come si fa) in vb.net non saprei come attribuire a delle variabili il valore dei campi.
    In VB.NET non esistono più i recordset, ma DataSet, DataReader, ...

    Originariamente inviato da aledg
    sql="SELECT * FROM TEST"

    oppure

    sql="SELECT test FROM TEST"

    e poi come associo i campi del db alle variabili?
    Le cose sono nettamente cambiate in VB.NET quindi ora è possibile recuperare valori da una tabella in modi diversi, a seconda delle necessità.
    Io te ne mostro uno, quello a sola lettura usando un DataReader:

    codice:
    SQL="SELECT test FROM TEST"
    Dim aCommand As MySqlCommand= NewMySqlCommand(SQL, objconn)
    Try
      Using aReader As MySqlDataReader = aCommand.ExecuteReader()
        Do While aReader.Read()
            ' per ogni riga esistente, mostro il valore della prima colonna (0)
            results = results & aReader.GetValue(0).ToString & vbTab
        Loop
        'mostra il risultato
        MessageBox.Show(results)
      End Using
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try
    Guarda che ho scritto al volo, quindi potrei aver commesso qualche errore.


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.