Не удалось обновить базу данных с помощью TableAdapter

#vb.net #ado.net #tableadapter

#vb.net #ado.net #tableadapter

Вопрос:

У меня возникла проблема при попытке вставить, удалить или обновить данные в базе данных SQL Server с VB.NET .

Я пытаюсь вставить данные двумя разными способами, но ни один из них не работает:

  • вставка непосредственно через tableadapter с помощью команды «Вставить».
  • при манипулировании объектом «таблица», который используется для последовательного обновления табличного адаптера.
 Dim acmd As New DSGTableAdapters.t001_comandosTableAdapter
Dim tcmd As New DSG.t001_comandosDataTable

acmd.Insert(1, 1, "Teste dado", "Teste ação")

tcmd = acmd.GetData
tcmd.Addt001_comandosRow(2, 2, "teste dado2 através de tabela", "teste ação2")

acmd.Update(tcmd)
  

Я могу манипулировать данными напрямую с помощью проводника базы данных Visual Studio, но в коде я не добиваюсь того же.

  • Visual Studio 2010 (VB)
  • Microsoft SQL Server 2008 v. 10.00.2531
  • Поставщик: Поставщик данных .NET Framework для SQL Server
  • База данных находится на локальном компьютере, доступ к ней предоставлен.

Как это можно решить?

Комментарии:

1. Вы получаете ошибки или данные просто не отображаются в базе данных? Если вы получаете ошибки, вам нужно добавить их в свой вопрос, чтобы мы могли помочь вам решить вашу проблему. Если вы не получаете ошибок, просматривали ли вы код в debugger, чтобы проверить, выполняется ли каждая строка?

2. Трудно сказать. Мы не знаем, как выглядит ваша SQL-команда INSERT и что это за DSGTableAdapters.t001_comandosTableAdapter на самом деле. Если бы вы использовали SqlCommand, то вы бы сделали что-то вроде: var cmd = new SqlCommand(«ВСТАВИТЬ В …»); cmd. ExecuteNonQuery();

3. Да, я выполнял код без ошибок и делал это шаг за шагом. Я попробую метод ExecuteNonQuery.