Procedura dettagliata: salvataggio di dati con i metodi DBDirect di TableAdapter
Data di pubblicazione: aprile 2016
Questa procedura dettagliata fornisce istruzioni dettagliate per eseguire le istruzioni SQL direttamente su un database usando i metodi DBDirect di un oggetto TableAdapter. I metodi DBDirect di un oggetto TableAdapter forniscono un elevato livello di controllo degli aggiornamenti del database. Mediante questi metodi è possibile eseguire istruzioni SQL specifiche e stored procedure chiamando i singoli metodi Insert
, Update
e Delete
, come richiesto dall'applicazione (a differenza del metodo in overload Update
che consente di eseguire le istruzioni UPDATE, INSERT e DELETE in un'unica chiamata).
Durante questa procedura dettagliata, si apprenderà come:
Creare una nuova applicazione Windows.
Creare e configurare un set di dati con la Configurazione guidata origine dati.
Selezionare il controllo da creare sul form mediante il trascinamento degli elementi dalla finestra Origini dati. Per altre informazioni, vedere Impostare il controllo da creare durante il trascinamento dalla finestra Origini dati.
Creare il controllo associato a dati mediante il trascinamento degli elementi dalla finestra Origini dati nel form.
Aggiungere metodi per accedere direttamente al database ed eseguire operazioni di inserimento, aggiornamento ed eliminazione direttamente sul database.
Prerequisiti
Per completare questa procedura dettagliata, è necessario:
- Accedere al database di esempio Northwind. Per altre informazioni, vedere Procedura: installare database di esempio.
Creazione di un'applicazione Windows
Il primo passaggio consiste nella creazione di un'applicazione Windows.
Per creare il nuovo progetto Windows
In Visual Studio creare un nuovo Progetto dal menu File.
Denominare il progetto TableAdapterDbDirectMethodsWalkthrough.
Selezionare Applicazione Windows e fare clic su OK. Per altre informazioni, vedere Applicazioni client.
Il progetto TableAdapterDbDirectMethodsWalkthrough viene creato e aggiunto a Esplora soluzioni.
Creazione di un'origine dati dal database
Questo passaggio usa la Configurazione guidata origine dati per creare un'origine dati basata sulla tabella Region
contenuta nel database di esempio Northwind. Per creare la connessione, è necessario avere accesso al database di esempio Northwind. Per informazioni sull'impostazione del database di esempio Northwind, vedere Procedura: installare database di esempio.
Per creare l'origine dati
Scegliere Mostra origini dati dal menu Dati.
Nella finestra Origini dati selezionare Aggiungi nuova origine dati per avviare la Configurazione guidata origine dati.
Selezionare Database nella pagina Scegliere un tipo di origine dati e scegliere Avanti.
Nella pagina Seleziona connessione dati eseguire una delle operazioni seguenti:
Selezionare la connessione dati al database di esempio Northwind nell'elenco a discesa, se presente.
-oppure-
Selezionare Nuova connessione per aprire la finestra di dialogo Aggiungi/Modifica connessione.
Se il database in uso richiede una password, selezionare l'opzione che consente di includere dati riservati, quindi scegliere Avanti.
Nella pagina Salva stringa di connessione nel file di configurazione dell'applicazione fare clic su Avanti.
Espandere il nodo Tabelle nella pagina Seleziona oggetti di database.
Selezionare la tabella
Region
, quindi fare clic su Fine.L'oggetto NorthwindDataSet viene aggiunto al progetto e la tabella
Region
viene visualizzata nella finestra Origini dati.
Aggiunta di controlli al form per visualizzare i dati
Creare i controlli associati a dati mediante il trascinamento degli elementi dalla finestra Origini dati nel form.
Per creare controlli associati a dati nel Windows Form
Trascinare il nodo Region principale dalla finestra Origini dati al form.
Nel form vengono visualizzati un controllo DataGridView e un controllo ToolStrip (BindingNavigator) per lo spostamento all'interno dei record. Nella barra dei componenti vengono visualizzati gli oggetti NorthwindDataSet, RegionTableAdapter, BindingSource e BindingNavigator.
Per aggiungere pulsanti da usare per la chiamata ai singoli metodi DbDirect di TableAdapter
Trascinare tre controlli Button dalla Casella degli strumenti a Form1 (sotto l'oggetto RegionDataGridView).
Impostare le seguenti proprietà Name e Text su ciascun pulsante.
Name Text InsertButton
Insert UpdateButton
Update DeleteButton
Delete
Per aggiungere il codice per l'inserimento dei nuovi record nel database
Fare doppio clic su InsertButton per creare un gestore eventi per l'evento clic e aprire il form nell'editor di codice.
Sostituire il gestore eventi
InsertButton_Click
con il codice seguente:private void InsertButton_Click(object sender, EventArgs e) { Int32 newRegionID = 5; String newRegionDescription = "NorthEastern"; try { regionTableAdapter1.Insert(newRegionID, newRegionDescription); } catch (Exception ex) { MessageBox.Show("Insert Failed"); } RefreshDataset(); } private void RefreshDataset() { this.regionTableAdapter1.Fill(this.northwindDataSet1.Region); }
Private Sub InsertButton_Click() Handles InsertButton.Click Dim newRegionID As Integer = 5 Dim newRegionDescription As String = "NorthEastern" Try RegionTableAdapter1.Insert(newRegionID, newRegionDescription) Catch ex As Exception MessageBox.Show("Insert Failed") End Try RefreshDataset() End Sub Private Sub RefreshDataset() Me.RegionTableAdapter1.Fill(Me.NorthwindDataSet1._Region) End Sub
Per aggiungere il codice per l'aggiornamento dei record nel database
Fare doppio clic su UpdateButton per creare un gestore eventi per l'evento clic e aprire il form nell'editor di codice.
Sostituire il gestore eventi
UpdateButton_Click
con il codice seguente:private void UpdateButton_Click(object sender, EventArgs e) { Int32 newRegionID = 5; try { regionTableAdapter1.Update(newRegionID, "Updated Region Description", 5, "NorthEastern"); } catch (Exception ex) { MessageBox.Show("Update Failed"); } RefreshDataset(); }
Private Sub UpdateButton_Click() Handles UpdateButton.Click Dim newRegionID As Integer = 5 Try RegionTableAdapter1.Update(newRegionID, "Updated Region Description", 5, "NorthEastern") Catch ex As Exception MessageBox.Show("Update Failed") End Try RefreshDataset() End Sub
Per aggiungere i record di eliminazione del codice dal database
Fare doppio clic su DeleteButton per creare un gestore eventi per l'evento clic e aprire il form nell'editor di codice.
Sostituire il gestore eventi
DeleteButton_Click
con il codice seguente:private void DeleteButton_Click(object sender, EventArgs e) { try { regionTableAdapter1.Delete(5, "Updated Region Description"); } catch (Exception ex) { MessageBox.Show("Delete Failed"); } RefreshDataset(); }
Private Sub DeleteButton_Click() Handles DeleteButton.Click Try RegionTableAdapter1.Delete(5, "Updated Region Description") Catch ex As Exception MessageBox.Show("Delete Failed") End Try RefreshDataset() End Sub
Esecuzione dell'applicazione
Per eseguire l'applicazione
Premere F5 per eseguire l'applicazione.
Fare clic sul pulsante Inserisci e verificare che il nuovo record venga visualizzato nella griglia.
Fare clic sul pulsante Aggiorna e verificare che il nuovo record venga aggiornato nella griglia.
Fare clic sul pulsante Elimina e verificare che il nuovo record venga rimosso dalla griglia.
Passaggi successivi
A seconda dei requisiti dell'applicazione, si potranno eseguire diverse operazioni una volta terminata la creazione di un form associato a dati. È possibile apportare alcuni miglioramenti a questa procedura dettagliata, tra cui:
Aggiunta di funzionalità di ricerca al form. Per altre informazioni, vedere Procedura: aggiungere una query con parametri a un'applicazione Windows Form.
Aggiunta di altre tabelle al set di dati selezionando Configura il Dataset con la procedura guidata nella finestra Origini dati. È possibile aggiungere controlli che consentono di visualizzare dati correlati mediante il trascinamento dei nodi correlati nel form. Per altre informazioni, vedere Procedura: visualizzare dati correlati in un'applicazione Windows Form.
Vedere anche
Cenni preliminari sugli oggetti TableAdapter
Procedura: accedere direttamente al database mediante un oggetto TableAdapter
Procedura: creare query TableAdapter
Procedura: salvare dati da un oggetto in un database
Associazione di controlli Windows Form ai dati in Visual Studio
Connessione ai dati in Visual Studio
Preparazione dell'applicazione al ricevimento di dati
Recupero di dati nell'applicazione
Associazione di controlli ai dati in Visual Studio
Modifica di dati nell'applicazione
Convalida dei dati
Salvataggio di dati