Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di kobe83
    Registrato dal
    Sep 2008
    Messaggi
    89

    [vb.net + mysql] inserire record tabella

    Ciao!
    Abuso del vostro aiuto per l'ennesima volta...

    Vorrei prendere i campi contenuti in un record di una tabella e copiarli all'interno di una seconda tabella.
    Per quanto riguarda la lettura dei campi della prima tabella non ho alcun problema, la cosa la faccio nel seguente modo:

    codice:
    Function inserisci_cancella(ByVal nomegiocatore As String)
            Try
                connetti_database()
                Dim ds As DataSet = New DataSet
                Dim dbda As MySqlDataAdapter = New MySqlDataAdapter
                
                dbda.SelectCommand = New MySqlCommand("SELECT nome,ruolo,valore FROM giocatori_tot WHERE nome='" & (nomegiocatore) & "'", conn)
                
                dbda.executenonquery()
                disconnetti_database()
            Catch ex As Exception
                Response.Write(ex.Message)
            End Try
        End Function
    Io vorrei a questo punto inserire i campi nome, ruolo, valore che corrispondono alla mia clausola FROM in una seconda tabella che si chiama GIOCATORI_SQUADRA anch'essa composta dai campi nome, ruolo,valore.

    Che struttura posso usare per "passare" i dati da una tabella all'altra?
    Posso risolvere solo con una query sql oppure ho bisogno anche di una struttura fornita da vb? (ad esempio un dataset)

    Se non sono stato abbastanza chiaro vi prego di scusarmi, sono pronto a fornire ulteriori spiegazioni.

  2. #2
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    codice:
    dbda.SelectCommand = New MySqlCommand("INSERT INTO giocatori_squadra VALUES(SELECT * FROM giocatori_tot WHERE nome='" & (nomegiocatore) & "')", conn)

  3. #3
    Utente di HTML.it L'avatar di kobe83
    Registrato dal
    Sep 2008
    Messaggi
    89
    Grazie stoichenko sei sempre gentilissimo.
    Io dopo una serie indefinita di madonne ho risolto in questo modo, lo posto nel caso in futuro potesse servire a qualcuno:

    codice:
    Sub inserisci_cancella(ByVal nomegiocatore As String)
            Try
                connetti_database()
                Dim ds As DataSet = New DataSet
                Dim dbda As MySqlDataAdapter = New MySqlDataAdapter
                                       
                dbda.SelectCommand = New MySqlCommand("SELECT nome,ruolo,valore FROM giocatori_tot WHERE nome like '%" & (nomegiocatore) & "%'", conn)
                dbda.Fill(ds, "fantacalcio")
                
                Dim inserisci As New MySqlCommand("INSERT INTO giocatori_squadra (nome,ruolo,valore) VALUES('" & ds.Tables("fantacalcio").Rows.Item(0).Item("nome") & "','" & ds.Tables("fantacalcio").Rows.Item(0).Item("ruolo") & "','" & ds.Tables("fantacalcio").Rows.Item(0).Item("valore") & "')", conn)
                inserisci.ExecuteNonQuery()
                   
            
                disconnetti_database()
            Catch ex As Exception
                Response.Write(ex.Message)
            End Try
        End Sub

  4. #4
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    bè potevi benissimo farlo con una sola query, cmq è la stessa cosa (magari un po' più lenta)

  5. #5
    Utente di HTML.it L'avatar di kobe83
    Registrato dal
    Sep 2008
    Messaggi
    89
    Originariamente inviato da Stoicenko
    bè potevi benissimo farlo con una sola query, cmq è la stessa cosa (magari un po' più lenta)
    Si hai ragione... solo che a me le cose immediate evidentemente non mi piacciono

    ciao e grazie ancora

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.