SQL to Array
Moin Zusammen,
als erfahrener SysAdmin und VB.net Neueinsteiger stehe ich der Zeit vor einem Problem.
Für eine Hilfsorganisation, bin ich zur Zeit an der Entwicklung eines Verwaltungsprogramms für Behandungsplätzen.
Zweck soll die Verwaltung von Betten auf groß Veranstaltungen sein.
Es gibt eine Access Daten mit mehreren Tabellen, in einer sind die vorhandenen Behandlungsplätze gelistet mit einem JA / Nein Feld für die Belegung.
Diese werden dann in der Übersicht zur Visuellendarstellung genutzt.
ID dt_Platz dt_Bel
1 INT
2 BEH X
3 BET X
... ... ...
Diese Werte rufe ich Bereits per OleDbDataReader ab.
Schreibe diese per in die Variable existingFileName.
Hab diesen Quellcode ebenfalls im Netz gefunden.
Habe im Programm bereits mehre DB Abfragen, welche funktionieren.
<code
Dim conn As New OleDbConnection("Provider = Microsoft.ACE.OLEDB.12.0;Data Source = C:\Test\DRKBHP_DATA.accdb")
Dim sqlString As String = "SELECT * FROM tbl_BHPBelegung"
Dim x As Integer = 0 'count of results
Dim existingFileName As New List(Of String)
conn.Open()
Dim cmd As New OleDbCommand(sqlString, conn)
Dim dr As OleDbDataReader
dr = cmd.ExecuteReader
Do While dr.Read()
existingFileName.Add(dr.GetValue(0).ToString())
x = x + 1
Loop
conn.Close()
conn.Close()
Die Frage ist jetzt, wie bekomme ich die Datensätze dt_Platz & dt_Bel in ein Array um diese weiter zu verarbeiten?
Gruß Patrick
als erfahrener SysAdmin und VB.net Neueinsteiger stehe ich der Zeit vor einem Problem.
Für eine Hilfsorganisation, bin ich zur Zeit an der Entwicklung eines Verwaltungsprogramms für Behandungsplätzen.
Zweck soll die Verwaltung von Betten auf groß Veranstaltungen sein.
Es gibt eine Access Daten mit mehreren Tabellen, in einer sind die vorhandenen Behandlungsplätze gelistet mit einem JA / Nein Feld für die Belegung.
Diese werden dann in der Übersicht zur Visuellendarstellung genutzt.
ID dt_Platz dt_Bel
1 INT
2 BEH X
3 BET X
... ... ...
Diese Werte rufe ich Bereits per OleDbDataReader ab.
Schreibe diese per in die Variable existingFileName.
Hab diesen Quellcode ebenfalls im Netz gefunden.
Habe im Programm bereits mehre DB Abfragen, welche funktionieren.
<code
Dim conn As New OleDbConnection("Provider = Microsoft.ACE.OLEDB.12.0;Data Source = C:\Test\DRKBHP_DATA.accdb")
Dim sqlString As String = "SELECT * FROM tbl_BHPBelegung"
Dim x As Integer = 0 'count of results
Dim existingFileName As New List(Of String)
conn.Open()
Dim cmd As New OleDbCommand(sqlString, conn)
Dim dr As OleDbDataReader
dr = cmd.ExecuteReader
Do While dr.Read()
existingFileName.Add(dr.GetValue(0).ToString())
x = x + 1
Loop
conn.Close()
conn.Close()
Die Frage ist jetzt, wie bekomme ich die Datensätze dt_Platz & dt_Bel in ein Array um diese weiter zu verarbeiten?
Gruß Patrick
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 281891
Url: https://administrator.de/forum/sql-to-array-281891.html
Ausgedruckt am: 22.12.2024 um 21:12 Uhr
2 Kommentare
Neuester Kommentar
Hallo Patrick,
Ich kann dir jetzt kein Code-Beispiel nennen, aber ich würde spontan sagen, dass du ein Recordset anlegst. Das ist im Prinzip ein virtuelles Abbild deiner tatsächlichen Tabelle, auf welches du im Code Zugriff hast. Dann legst du ein Array an und lässt eine Schleife durchlaufen, in welcher du im Recordset, bei jedem Schritt einen Datensatz weiterwechselst und dann diesen Wert in den Array einträgst, welcher eine dynamische Größe hat.
Ich habe solche Fälle schon des öfteren in MS Access so oder so Ähnlich behandelt.
Gruß Manuel
Ich kann dir jetzt kein Code-Beispiel nennen, aber ich würde spontan sagen, dass du ein Recordset anlegst. Das ist im Prinzip ein virtuelles Abbild deiner tatsächlichen Tabelle, auf welches du im Code Zugriff hast. Dann legst du ein Array an und lässt eine Schleife durchlaufen, in welcher du im Recordset, bei jedem Schritt einen Datensatz weiterwechselst und dann diesen Wert in den Array einträgst, welcher eine dynamische Größe hat.
Ich habe solche Fälle schon des öfteren in MS Access so oder so Ähnlich behandelt.
Gruß Manuel
Hallo Patrick
ich würde die Daten einfach mit einem DataAdapter in eine DataTable einlesen, denn die kannst du auch direkt als Datenquellen z.B. für ein DataGridView etc. nutzen. Damit stehen dir dann alle Optionen offen.
Hier ein Beispiel:
Grüße Uwe
ich würde die Daten einfach mit einem DataAdapter in eine DataTable einlesen, denn die kannst du auch direkt als Datenquellen z.B. für ein DataGridView etc. nutzen. Damit stehen dir dann alle Optionen offen.
Hier ein Beispiel:
'leere DataTable erstellen
Dim dt As New DataTable
Try
Using conn As New OleDbConnection("Provider = Microsoft.ACE.OLEDB.12.0;Data Source = C:\Test\DRKBHP_DATA.accdb")
'SQL String
Dim sqlString As String = "SELECT * FROM tbl_BHPBelegung"
'Verbindung öffnen
conn.Open()
'Dataadapter erstellen
Using da As New OleDbDataAdapter(sqlString, conn)
'Datatable mit den Daten füllen
da.Fill(dt)
End Using
'Verbindung schließen
conn.Close()
End Using
'Zum Beispiel die Daten aus der Datatable ausgeben
For Each row As DataRow In dt.Rows
MsgBox(row("dt_Platz") & " : " & row("dt_Bel"))
Next
Catch ex As Exception
MsgBox(ex.Message)
End Try