Member 11856456 Ответов: 1

Как использовать метод dt. copy для копирования таблицы, заполненной адаптером SQL, в уже существующую таблицу


То, что я пытаюсь сделать, - это взять заполненную адаптером sql таблицу и скопировать ее либо в уже существующую таблицу в базе данных, либо создать новую таблицу и поместить ее в базу данных с скопированной информацией.

вот что у меня есть до сих пор.
Dim sqlconn1 As New SqlConnection("connectionstring")

      Dim sqladaptor = New SqlDataAdapter
      sqlconn1.Open()
      sqladaptor.SelectCommand = New SqlCommand("select * from " + "[" + ListBox1.SelectedItem + "]", sqlconn1)

      sqladaptor.SelectCommand.ExecuteNonQuery()
      Dim dt As New DataTable

      sqladaptor.Fill(dt)

      sqlconn1.Close()


      dt.TableName = "CopyTable"
     ??????? = dt.Copy()

      sqlconn2.Close()


Что я уже пробовал:

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

1 Ответов

Рейтинг:
2

Dave Kreskowiak

Копирование объекта DataTable вообще ничего не дает.

Вы должны сначала выполнить запрос, чтобы создать таблицу в базе данных, если это необходимо. Я понятия не имею, так как ваши "требования" не очень ясны.

Как только таблица будет там, вы должны пройти через объект DataTable и выполнить либо SQL INSERT, либо UPDATE запрос к этой таблице, опять же, в зависимости от ваших неопределенных требований.

Вы могли бы использовать для этого другой SqlDataAdapter, но я никогда этого не делаю. Я просто пишу код, чтобы справиться с этой операцией самостоятельно.