Utilizzo Oledb VBnet

QUESTA FUNZIONE  RESTITUISCE IL DATASET CON I DATI RICHIESTI DALLA MIA QUERY


 ‘Come prima cosa Importo System.Data.OleDb

 Imports System.Data.OleDb


   Public Function tutto(Optional miaQuery As String = "") As DataSet

            ‘tabellaMateriali è una stringa contenente il nome della tabella del mio DataBase

            ‘My.Setting.campoOrdinamento è una stringa contenente il campo in base al quale eseguire l’aggiornameto

            ‘striConnessione è la stringa di connessione : Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Giuseppe\Desktop\COMPILATO\64\DATABASE\materiali.accdb;Persist Security Info=false

 

        ‘se miaQuery non è specificata allora la creo

   If miaQuery = "" Then

            query = "SELECT * FROM [" & tabellaMateriali & "] ORDER BY [" & My.Settings.campoOdinamento & "] ASC"

        Else

            query = miaQuery

        End If

 

        ' Mi connetto al DB

        Dim cn As New OleDbConnection(strConnessione)

        cn.Open()

 

        'Interrogo il DB con la query richiesta

        Dim command As New OleDbCommand(query, cn)

 

        command.ExecuteNonQuery()

 

        Dim da As New OleDbDataAdapter

 

        da.SelectCommand = command

 

        'Creo il DataSet della Tabella 'NomeTab'

        Dim ds As New DataSet(tabellaMateriali)

 

        ds.Clear()

 

        'Riempio l'Adapter con i dati del DataSet

        da.Fill(ds, tabellaMateriali)

        da.Update(ds, tabellaMateriali)

        ds.AcceptChanges()

        Return ds

 

        ‘chiudo la connessione

        cn.Close()

    End Function


QUESTA FUNZIONE  RESTITUISCE IL VALORE DI UN CAMPO SPECIFICO DEL MIO DATABASE

 

Public Function dammiQuantita(misura As String, specifica As String, fornitore As String) As Long

 

        ‘In questo esempio, data una misura, una specifica ed il fornitore, la funzione restituisce la quantità a deposito

 

        ‘Inizializzo il valore della funzione a 0

        dammiQuantita = 0

       

        Dim query as string

 

        ‘creo la mia query

        query = "SELECT * FROM [" & tabellaMateriali & "] WHERE ([MISURA] = '" & misura & "' AND [SPECIFICA] = '" & specifica & "' AND [FORNITORE] = '" & fornitore & "')"

        ' Mi connetto al DB

        Dim cn As New OleDbConnection(strConnessione)

        cn.Open()

 

        'Interrogo il DB con la query richiesta

        Dim command As New OleDbCommand(query, cn)

 

        command.ExecuteNonQuery()

 

        Dim da As New OleDbDataAdapter

 

        da.SelectCommand = command

 

        'Creo il DataSet della Tabella 'NomeTab'

        Dim ds As New DataSet(tabellaMateriali)

 

        ds.Clear()

 

        'Riempio l'Adapter con i dati del DataSet

        da.Fill(ds, tabellaMateriali)

        da.Update(ds, tabellaMateriali)

        ds.AcceptChanges()

        Try

            cn.Close()

 

            ‘RESTITUISCO il valore della Tables(tabellaMateriali) del mio dataset nella riga(0) e colonna(“QUANTITA”)

            Return CLng(ds.Tables(tabellaMateriali).Rows(0).Item("QUANTITA"))

 

        Catch ex As Exception

 

        End Try

  

        ‘Chiudo la connessione al DataBase

        cn.Close()

    End Function