SQL til data table
Jeg har en funktion der henter data fra en tekstfil og genererer et datasæt. Jeg kunne godt tænke mig at hente data direkte fra SQL-serveren, i stedet for en eksporteret, kommasepareret fil. Kan det lade sig gøre på en relativt let måde?Her er den nuværende funktion:
Public Function dinfunktion() As System.Data.DataSet
Dim csvPath As String = "c:\semikolonfil.txt"
Dim myDataSet As System.Data.DataSet = New System.Data.DataSet()
Dim myDataTable As System.Data.DataTable = New System.Data.DataTable("DataTabel")
Dim myDataColumn As System.Data.DataColumn
' 1. kolonne
myDataColumn = New System.Data.DataColumn("CPRnr")
myDataColumn.DataType = System.Type.GetType("System.String")
myDataTable.Columns.Add(myDataColumn)
' 2. kolonne
myDataColumn = New System.Data.DataColumn("Navn")
myDataColumn.DataType = System.Type.GetType("System.String")
myDataTable.Columns.Add(myDataColumn)
' 3. kolonne
myDataColumn = New System.Data.DataColumn("Fag")
myDataColumn.DataType = System.Type.GetType("System.String")
myDataTable.Columns.Add(myDataColumn)
Try
Using sr As System.IO.StreamReader = New System.IO.StreamReader(csvPath, New System.Text.UTF7Encoding())
While (Not sr.EndOfStream)
Dim line As String
line = sr.ReadLine()
Dim lineArr As String() = line.Split(";")
Dim myDataRow As System.Data.DataRow = myDataTable.NewRow()
myDataRow("CPRnr") = lineArr(0)
myDataRow("Navn") = lineArr(1)
myDataRow("Fag") = lineArr(2)
myDataTable.Rows.Add(myDataRow)
End While
End Using
Catch ex As Exception
Me.Close()
End
End Try
myDataSet.Tables.Add(myDataTable)
dinfunktion = myDataSet
End Function