Como salvar dados de um objeto em um banco de dados
Publicado: abril de 2016
Você pode salvar dados em objetos para um banco de dados, passando os valores do objeto para um dos métodos DBDirect do TableAdapter (por exemplo, TableAdapter.Insert
). Para obter mais informações, consulte Visão geral de TableAdapter.
Para salvar dados de uma coleção de objetos, percorrer a coleção de objetos (por exemplo, um loop for-next) e envie os valores para cada objeto de banco de dados usando um dos métodos DBDirect do TableAdapter.
Por padrão, os métodos DBDirect são criados em um TableAdapter que pode ser executado diretamente no banco de dados. Esses métodos podem ser chamados diretamente e não exigem DataSet ou DataTable objetos para reconciliar as alterações para enviar atualizações para um banco de dados.
Dica
Quando você estiver configurando um TableAdapter, a consulta principal deve fornecer informações suficientes para que os métodos DBDirect a ser criado. Por exemplo, se um TableAdapter é configurado para consultar dados de uma tabela que não tem uma coluna de chave primária definida, ele não gera métodos DBDirect.
Método TableAdapter DBDirect | Descrição |
---|---|
TableAdapter.Insert |
Adiciona novos registros em um banco de dados permitindo que você passe valores individuais de coluna como parâmetros do método. |
TableAdapter.Update |
Atualizações de registros existentes em um banco de dados. O Update método recebe valores de coluna original e novo como parâmetros de método. Os valores originais são usados para localizar o registro original e os novos valores são usados para atualizar esse registro.O TableAdapter.Update método também é usado para acomodar as alterações em um conjunto de dados no banco de dados fazendo uma DataSet, DataTable, DataRow, ou uma matriz de DataRows como parâmetros do método. |
TableAdapter.Delete |
Exclui registros existentes do banco de dados com base em valores da coluna original passados como parâmetros de método. |
Para salvar novos registros de um objeto em um banco de dados
Criar os registros passando os valores para o
TableAdapter.Insert
método.O exemplo a seguir cria um novo registro de cliente no
Customers
tabela passando os valores acurrentCustomer
do objeto para oTableAdapter.Insert
método.private void AddNewCustomers(Customer currentCustomer) { customersTableAdapter.Insert( currentCustomer.CustomerID, currentCustomer.CompanyName, currentCustomer.ContactName, currentCustomer.ContactTitle, currentCustomer.Address, currentCustomer.City, currentCustomer.Region, currentCustomer.PostalCode, currentCustomer.Country, currentCustomer.Phone, currentCustomer.Fax); }
Private Sub AddNewCustomer(ByVal currentCustomer As Customer) CustomersTableAdapter.Insert( currentCustomer.CustomerID, currentCustomer.CompanyName, currentCustomer.ContactName, currentCustomer.ContactTitle, currentCustomer.Address, currentCustomer.City, currentCustomer.Region, currentCustomer.PostalCode, currentCustomer.Country, currentCustomer.Phone, currentCustomer.Fax) End Sub
Para atualizar registros existentes de um objeto para um banco de dados
Modificar os registros chamando o
TableAdapter.Update
método e passar os novos valores para atualizar o registro e passar os valores originais para localizar o registro.Dica
O objeto deve manter os valores originais para passá-los para o
Update
método. Este exemplo usa as propriedades com umorig
prefixo para armazenar os valores originais.O exemplo a seguir atualiza um registro existente no
Customers
tabela passando os valores novos e originais noCustomer
do objeto para oTableAdapter.Update
método.private void UpdateCustomer(Customer cust) { customersTableAdapter.Update( cust.CustomerID, cust.CompanyName, cust.ContactName, cust.ContactTitle, cust.Address, cust.City, cust.Region, cust.PostalCode, cust.Country, cust.Phone, cust.Fax, cust.origCustomerID, cust.origCompanyName, cust.origContactName, cust.origContactTitle, cust.origAddress, cust.origCity, cust.origRegion, cust.origPostalCode, cust.origCountry, cust.origPhone, cust.origFax); }
Private Sub UpdateCustomer(ByVal cust As Customer) CustomersTableAdapter.Update( cust.CustomerID, cust.CompanyName, cust.ContactName, cust.ContactTitle, cust.Address, cust.City, cust.Region, cust.PostalCode, cust.Country, cust.Phone, cust.Fax, cust.origCustomerID, cust.origCompanyName, cust.origContactName, cust.origContactTitle, cust.origAddress, cust.origCity, cust.origRegion, cust.origPostalCode, cust.origCountry, cust.origPhone, cust.origFax) End Sub
Para excluir registros existentes de um banco de dados
Exclua os registros chamando o
TableAdapter.Delete
método e passar os valores originais para localizar o registro.Dica
O objeto deve manter os valores originais para passá-los para o
Delete
método. Este exemplo usa as propriedades com umorig
prefixo para armazenar os valores originais.O exemplo a seguir exclui um registro do
Customers
tabela passando os valores originais noCustomer
do objeto para oTableAdapter.Delete
método.private void DeleteCustomer(Customer cust) { customersTableAdapter.Delete( cust.origCustomerID, cust.origCompanyName, cust.origContactName, cust.origContactTitle, cust.origAddress, cust.origCity, cust.origRegion, cust.origPostalCode, cust.origCountry, cust.origPhone, cust.origFax); }
Private Sub DeleteCustomer(ByVal cust As Customer) CustomersTableAdapter.Delete( cust.origCustomerID, cust.origCompanyName, cust.origContactName, cust.origContactTitle, cust.origAddress, cust.origCity, cust.origRegion, cust.origPostalCode, cust.origCountry, cust.origPhone, cust.origFax) End Sub
Segurança do .NET Framework
Você deve ter permissão para executar a inserção selecionada, UPDATE ou DELETE na tabela no banco de dados.