la mia situazione è un pò particolare e non so neanche se mi sto comportando nel modo opportuno, ma vi espongo il problema:
ho 3 elementi
cnx.vb = dove inserisco i parametri di connessione
codice:
Imports MySql.Data.MySqlClient
Public Class cnx
Public Sub connessione()
Dim connectionString As String = "Server=localhost;User Id=root;Password=password;Database=db"
Using connection As New MySqlConnection(connectionString)
Try
If connection.State = ConnectionState.Closed Then
connection.Open()
'MsgBox("Connessione con il server effettuata con successo")
Else
connection.Close()
MsgBox("Error. Control connection parameter")
End If
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Using
End Sub
Public Shared Function ExecuteNonQuery(ByRef query As String) As Boolean
Using connection As New MySqlConnection("Server=localhost;User Id=root;Password=password;Database=db")
Using command As New MySqlCommand(query, connection)
connection.Open()
Try
If (command.ExecuteNonQuery() > 0) Then
connection.Close()
Return True
Else
connection.Close()
Return False
End If
Catch ex As Exception
MsgBox(ex.ToString)
connection.Close()
connection.Dispose()
Return False
End Try
End Using
End Using
End Function
End Class
un file che contiene tutte le classi riguardanti l anagrafica dei fornitori
codice:
Public Class classeAnagraficaclientefornitore
Class anagrafica
Sub inserisci(ByRef tipo As String, ByRef ragioneSociale As String, ByRef partitaIva As String, ByRef indirizzo As String, ByRef codiceFiscale As String, ByRef cap As String, ByRef localita As String, ByRef provincia As String, ByRef telefono As String, ByRef fax As String, ByRef cellulare As String, ByRef email As String, ByRef sitoWeb As String, ByRef personaDiRiferimento As String, ByRef telefonoPersonaDiRiferimento As String, ByRef emailPersonaDiRiferimento As String, ByRef iban As String)
Dim query As String = "INSERT INTO anagraficaclientefornitore(tipo, ragioneSociale, partitaIva, indirizzo, codiceFiscale, cap, localita, provincia, telefono, fax, cellulare, email, sitoWeb, personaDiRiferimento, telefonoPersonaDiRiferimento, emailPersonaDiRiferimento, iban) VALUES('" & tipo & "', '" & ragioneSociale & "','" & partitaIva & "','" & indirizzo & "','" & codiceFiscale & "','" & cap & "','" & localita & "','" & provincia & "','" & telefono & "','" & fax & "','" & cellulare & "','" & email & "','" & sitoWeb & "','" & personaDiRiferimento & "','" & telefonoPersonaDiRiferimento & "','" & emailPersonaDiRiferimento & "','" & iban & "')"
Try
If (cnx.ExecuteNonQuery(query)) Then
End If
MsgBox("Anagrafica " & ragioneSociale & " inserita con successo", MsgBoxStyle.OkOnly, "Operazione effettuata con successo")
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
End Class
End Class
e un form dove inserisco e leggo i dati
codice:
'libreria per usare mysql
Imports MySql.Data.MySqlClient
Imports System.Data
Public Class anagraficaClienteFornitore
Private Sub anagraficaClienteFornitore_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
visualizza()
With Me.cboTipo.Items
.Add("CLIENTE")
.Add("FORNITORE")
.Add("CLIENTE/FORNITORE")
End With
End Sub
Private Sub btnAggiungi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAggiungi.Click
If cboTipo.Text <> "CLIENTE" And cboTipo.Text <> "FORNITORE" And cboTipo.Text <> "CLIENTE/FORNITORE" Then
MsgBox("Impossibile inserire i dati nell'archivio." & vbCrLf & "Controllare che il campo Tipo non sia vuoto o che i dati inseriti non siano corretti.", MsgBoxStyle.Critical, "Impossibile effettuare l'operazione")
ElseIf tbxRagioneSociale.Text = String.Empty Then
MsgBox("Impossibile inserire i dati nell'archivio." & vbCrLf & "Controllare che il campo Ragione Sociale non sia vuoto", MsgBoxStyle.Critical, "Impossibile effettuare l'operazione")
ElseIf tbxPartitaIva.Text = String.Empty Then
MsgBox("Impossibile inserire i dati nell'archivio." & vbCrLf & "Controllare che il campo Partita IVA non sia vuoto", MsgBoxStyle.Critical, "Impossibile effettuare l'operazione")
End If
Dim inserisci As New classeAnagraficaclientefornitore.anagrafica
inserisci.inserisci(cboTipo.Text, tbxRagioneSociale.Text, tbxPartitaIva.Text, tbxIndirizzo.Text, tbxCodiceFiscale.Text, tbxCap.Text, tbxLocalita.Text, tbxProvincia.Text, tbxTelefono.Text, tbxFax.Text, tbxCellulare.Text, tbxEmail.Text, tbxSitoweb.Text, tbxPersonaDiRiferimento.Text, tbxTelefonoPersonaDiRiferimento.Text, tbxEmailPersonaDiRiferimento.Text, tbxIban.Text)
cboTipo.Text = String.Empty
tbxRagioneSociale.Text = String.Empty
tbxPartitaIva.Text = String.Empty
tbxIndirizzo.Text = String.Empty
tbxCodiceFiscale.Text = String.Empty
tbxCap.Text = String.Empty
tbxLocalita.Text = String.Empty
tbxProvincia.Text = String.Empty
tbxTelefono.Text = String.Empty
tbxFax.Text = String.Empty
tbxCellulare.Text = String.Empty
tbxEmail.Text = String.Empty
tbxSitoweb.Text = String.Empty
tbxPersonaDiRiferimento.Text = String.Empty
tbxTelefonoPersonaDiRiferimento.Text = String.Empty
tbxEmailPersonaDiRiferimento.Text = String.Empty
tbxIban.Text = String.Empty
End Sub
Sub visualizza()
Dim dbConn As MySqlConnection
dbConn = New MySqlConnection
dbConn.ConnectionString = ("Server=localhost;User Id=root;Password=password;Database=db")
dbConn.Open()
Dim myCommand As New MySqlCommand
Dim myReader As MySqlDataReader
Dim SQL As String
SQL = "SELECT * FROM anagraficaclientefornitore"
myCommand.Connection = dbConn
myCommand.CommandText = SQL
myReader = myCommand.ExecuteReader
While myReader.Read
ComboBox1.Items.Add(myReader.GetValue(myReader.GetOrdinal("ragioneSociale")))
End While
End Sub
End Class
La mia domanda è questa: come faccio a passare la visualizzazione dei dati nel foglio delle classi? preciso che la lettura dei dati è del tutto copiata in quanto sto cercando un metodo per non usare i dataset.
Spero di essere stato chiaro.