Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di mvent
    Registrato dal
    Jun 2002
    Messaggi
    230

    [VB_2010-2012] Aggiungere righe a una tabella di un database accdb

    Sono tre ore che cerco qui e su Google ma non riesco a far funzionare la routine... trovo messaggi contradditori, diversi... mi potete dare una mano su una cosa semplice?

    ho un database accdb e uso queste variabili:

    codice:
     Public AccessConn As System.Data.OleDb.OleDbConnection
        Public AccessCommand As System.Data.OleDb.OleDbCommand
        Public AccessReader As System.Data.OleDb.OleDbDataReader
        Public BS_Tab As New BindingSource
        Public DT_Adapt As System.Data.OleDb.OleDbDataAdapter
        Public DT_Table As DataTable
        Public Riga_Tab As DataRow
    Mi connetto così (funziona):
    codice:
     QueryCMD = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\prov3\gestv.accdb;Persist Security Info=False;"
      AccessConn = New System.Data.OleDb.OleDbConnection(QueryCMD)
     AccessConn.Open()
    Ora: devo semplicemente aggiungere una riga alla tabella "XYZ" del database.

    Potete scrivermi queste 10-15 o 20 righe che siano per fare questa semplice cosa?

    sono programmatore vb6 e sto imparando il vb2012 ma tra insert into, adapter, datatable non ci sto capendo più niente... mi sto perdendo in un bicchier d'acqua.

  2. #2
    Utente di HTML.it L'avatar di mvent
    Registrato dal
    Jun 2002
    Messaggi
    230
    Ho risolto così, spero sia la soluzione ottimale:

    Variabili:
    codice:
        Public AccessConn As System.Data.OleDb.OleDbConnection
        Public AccessCommand As System.Data.OleDb.OleDbCommand
        Public Parametro_DB As System.Data.OleDb.OleDbParameter
    Codice per l'aggiunta di una riga nel database accdb:
    codice:
       QueryCMD = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\pico\gestv.accdb;Persist Security Info=False;"
                AccessConn = New System.Data.OleDb.OleDbConnection(QueryCMD)
                AccessConn.Open()
    
       QueryCMD = "INSERT INTO tblNominativi ([IDNomin], [Nominativo], [Tel1], [Desc1]) VALUES (?, ?, ?, ?)"
                    AccessCommand = New System.Data.OleDb.OleDbCommand(QueryCMD, AccessConn)
                    Parametro_DB = New System.Data.OleDb.OleDbParameter
                    Parametro_DB.Direction = ParameterDirection.Input
                    Parametro_DB.DbType = DbType.Int32    'idnomin
                    Parametro_DB.Value = intID  'mia variabile di tipo Long
                    AccessCommand.Parameters.Add(Parametro_DB)
                    Parametro_DB = New System.Data.OleDb.OleDbParameter
                    Parametro_DB.DbType = DbType.String   'nominativo
                    Parametro_DB.Value = txtNom.Text
                    AccessCommand.Parameters.Add(Parametro_DB)
                    Parametro_DB = New System.Data.OleDb.OleDbParameter
                    Parametro_DB.DbType = DbType.String   'tel1
                    Parametro_DB.Value = txtTel1.Text
                    AccessCommand.Parameters.Add(Parametro_DB)
                    Parametro_DB = New System.Data.OleDb.OleDbParameter
                    Parametro_DB.DbType = DbType.String   'desc1
                    Parametro_DB.Value = txtDesc1.Text
                    AccessCommand.Parameters.Add(Parametro_DB)
                   
                    Try
                        AccessCommand.ExecuteNonQuery()
                    Catch ex As Exception
                        MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error)
                    Finally
                        AccessConn.Close()
                    End Try
                    StrMSG = MsgBox("Il nominativo è stato immesso.", vbInformation, "Immissione di un nominativo")

  3. #3
    Utente di HTML.it L'avatar di mvent
    Registrato dal
    Jun 2002
    Messaggi
    230
    In altre discussioni ho visto usare gli oggetti adapter, datatable, dataset.
    Se possibile, mi piacerebbe avere una conferma da alcuni utenti esperti, se il codice postato al messaggio precedente è il modo ottimale di aggiungere righe ad una tabella di database di tipo accdb.

    Il codice funziona ma vorrei avere questa conferma, grazie.


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.