SQL to Array

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    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.

    IDdt_Platzdt_Bel
    1INT
    2BEHX
    3BETX
    .........


    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.

    VB.NET-Quellcode

    1. Dim conn As New OleDbConnection("Provider = Microsoft.ACE.OLEDB.12.0;Data Source = C:\Test\DRKBHP_DATA.accdb")
    2. Dim sqlString As String = "SELECT * FROM tbl_BHPBelegung"
    3. Dim x As Integer = 0 'count of results
    4. Dim existingFileName As New List(Of String)
    5. conn.Open()
    6. Dim cmd As New OleDbCommand(sqlString, conn)
    7. Dim dr As OleDbDataReader
    8. dr = cmd.ExecuteReader
    9. Do While dr.Read()
    10. existingFileName.Add(dr.GetValue(0).ToString())
    11. x = x + 1
    12. Loop
    13. conn.Close()
    14. 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
    in .Net tut man Datensätze nicht in ein Array, sondern dafür gibts besondere Datensatz-Klassen.
    Und es gibt 2 Grund-Technologien, die derlei Datensatz-Klassen bereitstellen: a) typisiertes Dataset b) EntityFramework.

    Beide Technologien funktionieren prinzipiell gleich, nur typisiertes Dataset kann man (etwa zur Einarbeitung) auch ohne hinterlegte Datenbank verwenden.
    EF hingegen ist moderner, aber leider unlösbar gekoppelt an eine Datenbank, und zwar entweder SqlServerCe oder SqlServer. (Es werden auch weitere Dbs unterstützt, aber da muss man aber Zusätzliches installieren, und funzt oft trotzdem nicht - sowas ist zur Einarbeitung gänzlich unbrauchbar)

    Also ich bevorzuge typDataset, und hab dazu auch einen Haufen Tuts verzapft, und die enthalten immer auch lauffähige CodeSamples.
    Zu EF ist wesentlich schwieriger, Tuts zu finden, die auch mal eine lauffähige Sample-Solution beiliegen haben.

    Ich hab auch mal die Tuts zusammengestellt, mit denen man Datenbanking von der Pike an lernen kann, und wenn du vb.net-Neueinsteiger bist, ist das dringend empfohlen:
    Datenverarbeitungs-Vorraussetzungen

    Also die Prinzipien von Datenmodellierung mögen dir vertraut sein (nehme ich fast an), aber allein damit kann man noch lange lange nicht ein brauchbares vb.Net-Programm schreiben.
    Insbesondere das Riesen-Thema "Databinding" solltest du dir aneignen, sonst gerätst du an Wurstel-Ansätze, und auf Holzwege, die in zigtausend Zeilen Code enden - letztlich Müll, da so gut wie unwartbar.
    Einfach weil Databinding anfangs unbekannt war, und falsche Grundstein-Legung kann es auch endgültig ausschließen, es nachträglich noch zu integrieren.
    (und zwar passiert das so gut wie immer, wenn man mit Datenbanken anfängt, bevor man Databinding kennt)

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ErfinderDesRades“ ()