Procedura dettagliata: salvataggio di dati con i metodi DBDirect di TableAdapter
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 Procedura: impostare il controllo da creare per 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 Sviluppo di applicazioni client con .NET Framework.
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 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
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); }
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 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
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(); }
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 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
private void DeleteButton_Click(object sender, EventArgs e) { try { regionTableAdapter1.Delete(5, "Updated Region Description"); } catch (Exception ex) { MessageBox.Show("Delete Failed"); } RefreshDataset(); }
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
Attività
Procedura: accedere direttamente al database mediante un oggetto TableAdapter
Procedura: creare query TableAdapter
Procedura: salvare dati da un oggetto in un database
Concetti
Cenni preliminari sugli oggetti TableAdapter
Associazione di controlli Windows Form 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