Grundlegende Frage zum Tabellen befüllen einer Datenbank

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von Macfly123.

    Grundlegende Frage zum Tabellen befüllen einer Datenbank

    Hallo zusammen,

    wie geht man bei befüllen einer Datenbank vor? Kurze Erklärung was ich damit meine:

    Tabelle Shops hat 1000 Datensätze mit dem Gebietsleiter als Name. Jetzt will ich aber den GBL natürlich als Zahl da drin haben. Diese Zahl ist der Key für die Tabelle Gebietsleiter. Jetzt kann ich ja nicht alle 1000 Datensätze in der Datenbank durchackern und da den Namen raus und die ID des GBL eintragen. Wie geht ihr davor.

    Ich würde die Tabelle in Excel per SVerweis usw. erstellen mit der ID des GBL und dann die Tabelle Shops neu befüllen. Richtig? Oder wie sollte man das machen?
    Ich hoffe man versteht um was es mir hier geht.

    VG
    Das was du möchtest, ist eine 1:n Beziehung zweier Tabellen (siehe Bildchen)

    In der Gebietsleiter-Tabelle sind alle Gebietsleiter angeführt.
    Und in der 2. Tabelle alle Schop's aller Gebietsleiter und deren Key ID_GBL
    Zwischen beiden Tabellen musst du eine Beziehung erstellen (siehe nächstes Bilchen)

    siehe auch die UPDATE- und LÖSCH-Regel...

    Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „VB1963“ ()

    Macfly123 schrieb:

    Jetzt will ich aber den GBL natürlich als Zahl da drin haben.
    Das ist der richtige Gedanke, allerdings in ganz abwegiger Terminologie.
    Korrekt gesagt willst du wohl - wie vb1963 schon sagt, eine Relation definieren, und "den GBL als Zahl" würde man als ForeignKey dieser Relation bezeichnen.
    Ist witzig: du entwickelst die Grundlagen relationaler Datenmodellierung quasi aus eigener Kraft, ohne die Begrifflichkeiten zu kennen.

    Hier ein Tut, was sich mit relationaler Datenmodellierung befasst, und auch paar Terme klärt: codeproject.com/Articles/1030969/Relational-Datamodel

    Beachte übrigens auch die Empfehlung: Lass die Datenbank erstmal weg.
    Das richtige Verständnis der Verhältnisse erarbeitest du dir viel schneller und sicherer, wenn du deine Datenmodelle erstmal ohne hinterlegte DB entwickelst.
    Db hinterlegen kann man jederzeit immer noch später, wenn man mehr von der Sache versteht, und wenn das Datenmodell sich bereits vielfach bewährt hat.
    Und 1000 Datensätze sind auch noch überhaupt kein nennenwertes Datenaufkommen.

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

    Moin,

    also das rel. Datenmodell ist mir bekannt.
    Ich hatte mich glaube ich etwas komisch ausgedrückt.
    Es geht um das eigentl. füllen der von Daten. Ich habe die ja in einer Excelliste.
    Jetzt würde ich die jeweilige GBL-ID in einer weiteren Spalte per Sverweis hinzufügen und diese GBL-Namensspalte löschen. Und das dann in eine Tabelle spielen. Oder wie befüllt ihr Tabellen? Ich hoffe man versteht nicht jetzt.

    VG.Mac
    nicht wirklich.

    Eine Datenbank-Tabelle befüllt man durch Ausführen eines Insert-Commands für jeden einzufüllenden Datensatz.

    Wie du die Daten des Datensatzes bereitstellst hat damit nix zu tun - ich hab nix dagegen, wenn du sie aus einer Excel-Tabelle holst, meinetwegen auch per SVErweis und die GBL-Namenspalte löschen, was immer damit gemeint sein mag.
    Hauptsache, du hast die Daten, und führst ein Insert-Command damit aus.
    Geht mir dabei nur um die Datenbereitstellung.
    Könntest dir mir ein Tutorial nennen wie ich Daten in die DB aus einer Excel oder CSV Datei insertieren kann. Mit Daten aus Textfelder usw. kenn ich mich aus aber aus anderen Zuspielern....leider nicht.

    Ich weiß nur, dass man die Excel oder CSV erstmal hochladen muss und dann auslesen kann. Ist das richtig?
    Danke für eure Hinweise und Hilfe.
    ich weiß immer noch nicht recht,was du vorhast.
    Soll dein Programm nun mit Excel-Dateien arbeiten, mit Csv oder mit einer Datenbank?

    Käme evtl. noch eine ganz andere Daten-Datei in betracht? (ohne Datenbank ist nämlich vieles einfacher)

    Soll das ständig hin und her-konvertieren, oder ein einmaliger Export werden?
    Es geht hier um eine Online-Anwendung.
    Ich baue ein Inventur-Tool. Dazu muss ich die Bestandsliste, die in Excel/CSV kommt, in eine Datenbank hochladen. Über ein List'View wird der Bestand dann in "schön" auf der Webseite dargestellt.

    Über ein Textfeld wird ein Barcode eingegeben/gescannt und mit der den Barcodes in der DB verglichen gibts ein Treffer wird die Anzahl der gescannten Artikel hochgezählt. Und das ListView aktualisiert.
    Ich würd das Prob aufteilen

    1) zunächst was basteln, mit dem du erfolgreich einen Datensatz uploaden kannst.

    2) csv zeilenweise einlesen und an 1) übergeben.

    Also zunächstmal 1). Da wird am einfachsten sein, wenn du dir ein typisiertes Dataset generieren kannst, inklusive TableAdapter (auch wenn ich die sonst nicht liebe): typisierter Db-Zugriff mit Connectoren

    Geht leider nicht mit jeder Datenbank - welches Dbms liegt denn bei dir vor?