Salve a tutti,
Sono un programmatore senior in...ehm...vb6 
Ma da qualche giorno sto provando a cimentarmi con Vb2008..
grazie alle conoscenze acquisite in passato sto procedendo abbastanza spedito
ma mi sono bloccato su una cosa che davvero mi manda ai matti.
(probabilmente perchè dataset, datatable, dataadapter e compagnia mi hanno veramente confuso...)
Procedo: (faccio degli esempi, non è realmente la mia situazione)
Sul form ho una Datagridview.
Nel DB una tabella LAVORI con Idutente(di tipo int32) e "mestiere" (di tipo string)
Un altra tabella ANAGRAFICA con IDutente (di tipo Int32) , e Nome (di tipo string)
-> Riempio il mio dataset con il metodo Fill del dataadapter.
Poi popolo la Grid. per visualizzare la tabella LAVORI.
La grid chiaramente viene popolata cosi':
1 FABBRO
2 IDRAULICO
3 ARCHITETTO
Vorrei però che la grid si popolasse cosi':
MARCO FABBRO
GIANNI IDRAULICO
LUCA ARCHITETTTO
e ci siamo:
Ho creato una funzione che passandole l'ID, restituisce Il nome dalla tabella anagrafica.
immaginando di poter fare questo: (controllate all'interno del ciclo for).
codice:
Try
Dim id As Integer
Dim ds As New DataSet()
Dim da As New MySqlDataAdapter("SELECT id_utente,data_ins,titolo,testo FROM richieste where id_categoria=" & id_prima_categoria, conn)
da.Fill(ds, "richieste")
For i = 0 To ds.Tables("richieste").Rows.Count - 1
id = ds.Tables("richieste").Rows(i)("id_utente")
ds.Tables("richieste").Rows(i)("id_utente") = "utente"
Next
DataGridView1.DataSource = ds.Tables("richieste")
DataGridView1.Columns(0).Width = Int(DataGridView1.Width * 20) / 100
DataGridView1.Columns(1).Width = Int(DataGridView1.Width * 20) / 100
DataGridView1.Columns(2).Width = Int(DataGridView1.Width * 20) / 100
DataGridView1.Columns(3).Width = Int(DataGridView1.Width * 40) / 100
conn.Close()
Catch ex As Exception
MsgBox("Errore: " & ex.Message)
Me.Close()
End Try
[Ho messo "UTENTE" al posto del risultato della funzione, per semplicità]
di logica dovrebbe funzionare... 
tecnicamente però genera un errore di tipo "formato della stringa din input non corretto
impossibile archiviare utente nella colonna id_utente .il tipo previsto è int_32.
Sono esaurito...
come risolvere?
Dovrei forse eliminare la colonna id dal datatable e sostituirla con una colonna "nomi" generata a runtime?