Экспорт данных из VB.Net в SQL Server - PullRequest
0 голосов
/ 07 марта 2019

Я создал набор данных из xml-файла в VB.Net, в котором есть несколько таблиц (что я вижу по функции quickwatch).

Я хочу перенести этот набор данных с несколькими таблицами на сервер SQLв новую базу данных.

Я создал соединение между vb.net и сервером sql, но не смог перенести мой набор данных с vb.net на сервер sql (чтобы создать базу данных на сервере sql.

мои данные в xml:

<DESCRIBE> AXX RIGID INDENTATION DATA </DESCRIBE>
<EXPORT Date="2001-01-12" Time="13:00:00"/>
<Node AdjustDate="2001-01-12" Name="XBXX5" Type="AXX" TAG="">
<Experiment BuildingPractice="XYC511">
<Cabinet Position="">
 <Subrack Value="1.1.0.3" NAAM="EWXR2 40" Position="">
   <Sackxlanx NAAM="EXER2 40G BP">
     <Product FirstDate="2011-01-12" LastDate="2011-02-12" VAR1="20100811" ProductNAAM="EXEM3 40R BP" ProductDIGIT="XXJC0X3211/6" ProductYAAD="R2A" SerialNumber="XXXX77X33" Supplier="Random AB"/>
   </Sackxlanx>
   <PFM Name="PANKHA UNIT" PfmDeviceType="DOX" PfmHwVersion="1" PfmInstance="upper">
     <Product FirstDate="2011-01-12" LastDate="2011-01-12" VAR1="20100811" ProductNAAM="PANKHA UNIT" ProductDIGIT="XXXXXX3/1" ProductYAAD="X11B" SerialNumber="XX56977XX1" Supplier="Random AB"/>
   </PFM>
   <PFM Name="PANKHA UNIT" PfmDeviceType="SOD" PfmHwVersion="1" PfmInstance="lower">
     <Product FirstDate="2011-01-01" LastDate="2011-04-02" VAR1="20150704" ProductNAAM="PANKHA UNIT" ProductNumber="XXX14013/1" ProductYAAD="R11B" SerialNumber="X052916308" Supplier="Random AB"/>
   </PFM>
   <Board Comment="1.1.3.4" NAAM="EXX1" SlXXPositiXn="1">
     <Product FirstDate="2016-05-18" LastDate="2018-07-23" VAR1="20121004" ProductNAAM="EXX1" ProductDigit="XXX208394/2" ProductYAAD="XXD" SerialNumber="XXXXXG8615" Supplier="Random AB"/>
   </Board>
   </Subrack>
  </Cabinet>
</Experiment>
</Node> ```

**snippet of my code**:

Dim strOP As String = System.Text.RegularExpressions.Regex.Replace(strInput, pattern, "$1")

         Dim reader As New IO.StringReader(strOP)
         Dim ds2 As New DataSet()
         ds2.ReadXml(reader)
         TextBox1.Text = ds2.Tables.Count.ToString

         'Dim adp As SqlDataAdapter
         'Dim SQLCon As New SqlConnection With {.ConnectionString = "Server =name\SQLEXPRESS; Database =SQLApps; Trusted_Connection = yes;"}
         'Dim SQLCmd As SqlCommand
         'SQLCon = New SqlConnection()
         'SQLCmd = New SqlCommand("", SQLCon)
         'adp = New SqlDataAdapter(SQLCmd)
         'adp.Update(ds2)

         Dim connetionString As String
         Dim connection As SqlConnection
         Dim command As SqlCommand
         Dim adapter As New SqlDataAdapter
         Dim ds As New DataSet
         Dim i As Integer
         Dim firstSql As String
         Dim secondSql As String

         connetionString = "Server =servername\SQLEXPRESS; Database =SQLApps; Trusted_Connection = yes;"
         firstSql = "select Description from NetInventory"
         secondSql = "select * from NetInventory"
         connection = New SqlConnection(connetionString)


         connection.Open()

         command = New SqlCommand(firstSql, connection)
         adapter.SelectCommand = command
         adapter.Fill(ds2, "First Table")

         adapter.SelectCommand.CommandText = secondSql
         adapter.Fill(ds2, "Second Table")

         adapter.Dispose()
         command.Dispose()
         connection.Close()

         'retrieve first table data
         For i = 0 To ds2.Tables(0).Rows.Count - 1
             MsgBox(ds2.Tables(0).Rows(i).Item(0) & "  --  " & ds2.Tables(0).Rows(i).Item(1))
         Next
         'retrieve second table data
         For i = 0 To ds2.Tables(1).Rows.Count - 1
             MsgBox(ds2.Tables(1).Rows(i).Item(0) & "  --  " & ds2.Tables(1).Rows(i).Item(1))
         Next

     Catch ex As Exception
         MsgBox("Can not open connection ! ")
     End Try
     'Catch ex As Exception
     'End Try
 End Sub
End Class






1 Ответ

0 голосов
/ 07 марта 2019

Не могли бы вы использовать sqlbulkcopy для полной передачи данных в таблицы базы данных сервера sql?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...