Salvar dados com os métodos TableAdapter DBDirect em aplicativos do .NET Framework
Observação
Os conjuntos de dados e as classes relacionadas são tecnologias herdadas do .NET Framework do início dos anos 2000 que permitem que os aplicativos trabalhem com dados na memória enquanto os aplicativos estão desconectados do banco de dados. As tecnologias são bastante úteis em aplicativos que permitem que os usuários modifiquem dados e persistam as alterações no banco de dados. Embora os conjuntos de dados tenham se mostrado uma tecnologia muito bem-sucedida, é recomendado que os novos aplicativos .NET usem o Entity Framework Core. O Entity Framework proporciona uma forma mais natural de trabalhar com dados tabulares como modelos de objeto e conta com uma interface de programação mais simples.
Este tutorial fornece instruções detalhadas para a execução de instruções SQL diretamente em um banco de dados usando os métodos DBDirect de um TableAdapter. Os métodos DBDirect de um TableAdapter fornecem um bom nível de controle sobre as atualizações do seu banco de dados. Você pode usá-los para executar instruções e procedimentos armazenados específicos do SQL chamando os métodos individuais Insert
, Update
e Delete
, conforme a necessidade do seu aplicativo (ao contrário do método Update
sobrecarregado, que executa instruções UPDATE
, INSERT
e DELETE
ao mesmo tempo em apenas uma chamada).
Neste tutorial, você aprenderá a:
Criar e configurar um conjunto de dados com o Assistente de Configuração da Fonte de Dados.
Selecionar o controle a ser criado no formulário ao arrastar itens da janela Fontes de Dados. Para obter mais informações, consulte Definir o controle a ser criado ao arrastar da janela Fontes de Dados.
Cria controles de associação de dados arrastando itens da janela Fontes de Dados para um formulário.
Adicionar métodos para acessar diretamente o banco de dados e executar inserções, atualizações e exclusões.
Pré-requisitos
As etapas neste tutorial funcionam com aplicativos .NET Framework Windows Forms.
Este tutorial usa o SQL Server Express LocalDB e o banco de dados de exemplo da Northwind.
Se você não tiver SQL Server Express LocalDB, instale-o por meio da página de download do SQL Server Express ou usando o Instalador do Visual Studio. No Instalador do Visual Studio, você pode instalar o SQL Server Express LocalDB como parte da carga de trabalho Armazenamento e processamento de dados ou como um componente individual.
Instale o banco de dados de exemplo da Northwind seguindo estas etapas:
No Visual Studio, abra a janela Pesquisador de Objetos do SQL Server. (O Pesquisador de Objetos do SQL Server é instalado como parte da carga de trabalho Armazenamento e processamento de dados no Instalador do Visual Studio). Expanda o nó do SQL Server. Clique com o botão direito do mouse na instância do LocalDB e selecione Nova Consulta.
Uma janela do editor de consultas vai se abrir.
Copie o script Transact-SQL da Northwind para sua área de transferência. Esse script T-SQL cria o banco de dados da Northwind do zero e o preenche com alguns dados.
Cole o script T-SQL no editor de consultas e, em seguida, escolha o botão Executar.
Após um curto período, a consulta termina de ser executada e o banco de dados da Northwind é criado.
Criar um aplicativo do Windows Forms
A primeira etapa é criar um Aplicativo do Windows Forms (.NET Framework). Crie um projeto usando o tipo de projeto Windows Forms App, usando C# ou Visual Basic.
Observação
O código deste tutorial está disponível em C# e Visual Basic. Para alternar a linguagem de código nesta página entre C# e Visual Basic, use o comutador de linguagem de código na parte superior da página à direita.
Criar uma fonte de dados com base em seu banco de dados
Esta etapa usa o Assistente de Configuração de Fonte de Dados para criar uma fonte de dados com base na tabela Region
no banco de dados de exemplo Northwind. É preciso ter acesso ao banco de dados de exemplo Northwind para criar a conexão. Para obter informações sobre como configurar o banco de dados de exemplo da Northwind, consulte Como instalar bancos de dados de exemplo.
Para criar a fonte de dados
No menu Dados, selecione Mostrar Fontes de Dados.
A janela Fontes de Dados é aberta.
Na janela Fontes de Dados, selecione Adicionar Nova Fonte de Dados para iniciar o Assistente de Configuração de Fonte de Dados.
Na tela Escolher um Tipo de Fonte de Dados, selecione Banco de Dados e, em seguida, Avançar.
Na tela Escolha a Conexão de Dados, faça o seguinte:
Se uma conexão de dados com o banco de dados de exemplo Northwind estiver disponível na lista suspensa, selecione-o.
-ou-
Selecione Nova Conexão para inicializar a caixa de diálogo Adicionar/Modificar Conexão.
Se o banco de dados exigir uma senha, selecione a opção para incluir dados confidenciais e, em seguida, selecione Avançar.
Na tela Salvar cadeia de conexão no arquivo de Configuração de Aplicativo, selecione Avançar.
Expanda o nó Tabelas na tela Escolher Objetos do Banco de Dados.
Escolha a tabela
Region
e selecione Concluir.O NorthwindDataSet é adicionado ao projeto e a tabela
Region
aparece na janela Fontes de Dados.
Adiciona controles ao formulário para exibir os dados
Crie controles de associação de dados arrastando itens da janela Fontes de Dados para seu formulário.
Para criar controles associados a dados no formulário do Windows, arraste o nó Região principal da janela Fontes de Dados para o formulário.
Um controle DataGridView e uma faixa de ferramentas (BindingNavigator) para navegação em registros são exibidos no formulário. Um NorthwindDataSet, RegionTableAdapter
, BindingSource e BindingNavigator aparece na bandeja do componente.
Para adicionar botões que chamam os métodos individuais DbDirect de um TableAdapter
Arraste três controles Button da Caixa de Ferramentas para Form1 (abaixo de RegionDataGridView).
Defina as propriedades Nome e Texto a seguir em cada botão.
Nome Texto InsertButton
Inserção UpdateButton
Atualizar DeleteButton
Excluir
Para adicionar código para inserir novos registros no banco de dados
Selecione InsertButton para criar um manipulador de eventos para o evento Click e abrir o formulário no editor de códigos.
Substitua o manipulador de eventos
InsertButton_Click
pelo seguinte código: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); }
Observação
Dependendo da versão do Visual Studio e dos modelos de projeto usados, os nomes de variáveis como
regionTableAdapter
ouregionTableAdapter1
usados nesse código podem ou não ter um 1 à direita no código gerado. Faça quaisquer correções em seu código para garantir que o nome correto seja usado em todos os lugares. O Visual Studio mostra um rabiscos vermelho em que o nome está incorreto.
Para adicionar código para atualizar registros no banco de dados
Clique duas vezes em UpdateButton para criar um manipulador de eventos para o evento Click e abrir o formulário no editor de códigos.
Substitua o manipulador de eventos
UpdateButton_Click
pelo seguinte código:
Para adicionar código excluir registros do banco de dados
Selecione DeleteButton para criar um manipulador de eventos para o evento Click e abrir o formulário no editor de códigos.
Substitua o manipulador de eventos
DeleteButton_Click
pelo seguinte código:
Executar o aplicativo
Selecione F5 para executar o aplicativo.
Clique no botão Inserir e verifique se você vê o novo registro na grade.
Selecione o botão Atualizar e verifique se o registro foi atualizado na grade.
Selecione botão Excluir e verifique se o registro foi removido da grade.
Próximas etapas
Dependendo dos requisitos do aplicativo, existem várias etapas que você talvez queira realizar após criar um formulário de associação de dados. Entre algumas das melhorias que você poderia fazer nesse tutorial estão:
Adicionando funcionalidade de busca ao formulário.
Adicionar tabelas ao conjunto de dados, selecionando Configurar DataSet com Assistente na janela Fontes de Dados. Você pode adicionar controles que exibem dados relacionados, arrastando os nós relacionados para o formulário. Para obter mais informações, consulte Relações em conjunto de dados abaixo.