Datatable in SQL-Datenbank importieren

  • VB.NET
  • .NET (FX) 4.0

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von simpelSoft.

    Datatable in SQL-Datenbank importieren

    Hallo,

    ich will ein Datatable in eine SQL - Datenbank importieren. Jedoch habe ich absolut null Plan wie das funktioniert.

    Hab leider nichts passendes bzw. verständliches im Internet gefunden. Wäre schön wenn jemand hier mir das einwenig erklären könnte.

    Mein Datatable ist schon gefüllt :)

    Liebe grüße
    Dazu richteste dir einen DataAdapter ein, und rufst dann adapter.Update(datatable) auf.
    gugge "Datenbank in 10 Minuten" auf erfinderdesrades.unitweb.de/Pr…r/Downloadpage/index.html

    Rate ich aber von ab.
    Denn vmtl. stehen erst noch ganz annere Dinge zu lernen an, nämlich was ein typisiertes Dataset ist, und wie man damit umgeht.
    gugge die vier Views auf Video

    Für "eine Datatable" ist SqlServer auch völlig oversized. Enthält die DB nur eine einzige Tabelle? Und wie kommts dazu?
    Sind die Vorgabe meiner Firma, dass ich die Daten in ein SQL Datenbank schreibe.

    In der Datenbank befinden sich 4 Tabellen.

    Die Anwendung soll erkennen, ob neue .csv Dateien in einem Verzeichnis liegen, und diese dann per Click Ereignis in die jeweilige Tabelle importiert. Hatte die ganze Zeit das Datatable in ein Datagridview geladen und über das Datagridview in die Datenbank importiert. Also quasi als "Vorschau". Das funktioniert auch alles prima

    Nur soll das Datagridview jetzt weglassen und direkt über das Datatable importieren.
    Zimmer dir doch einfach ne Function zusammen mit dem Quellcode zum Importieren und ruf diese doch einfach nach dem Einlesen in das Datagrid,
    welches du einfach mit Visible = False versteckst :D
    Viele Frauen kamen, viele sind gegangen, eine ist geblieben 12.5.12 <3 ich liebe dich Schatz :love: :love:
    sry ich weiß man sollte keine falschen Lösungsvorschläge machen, wäre bei ihm halt das einfachste gewesen hihi :D (just copy und paste)

    ne du solltest allein des "Stils" gegenüber zu Dataset greifen
    Viele Frauen kamen, viele sind gegangen, eine ist geblieben 12.5.12 <3 ich liebe dich Schatz :love: :love:
    Hi Likai,
    dies könnte ein anfang sein
    '---------------------------
    'OPENFILEDIALOG User wählt die CSV Datei aus
    '---------------------------
    Dim strPath as String = ""
    Dim openFileDialog1 As OpenFileDialog = New OpenFileDialog()
    openFileDialog1.InitialDirectory = System.IO.Path.GetDirectoryName(Application.ExecutablePath)

    openFileDialog1.Filter = "CSV files (*.csv)|*.csv"
    openFileDialog1.FilterIndex = 2
    openFileDialog1.RestoreDirectory = True

    If openFileDialog1.ShowDialog() = DialogResult.OK Then
    strPath = openFileDialog1.FileName
    Else
    Exit Sub
    End If

    'Danach brauch du einen Streamreader nicht vergsssen auch den namespace zu intregieren
    Imports System.IO

    Dim reader = New StreamReader(strPath)

    // Jetzt musst du dir noch die Datable zurecht machen, in die du die daten schreiben willst, bevor du sie in den server schreibst. Es ist zu empfehlen es so zu machen, so kannst du die daten in der Tabelle nochmal checken.
    das geht so:
    Dim dt as datable = Nothing
    dt.Columns.Add(New DataColumn("Ihr_Key_IdNr", GetType(Integer)))
    und so weiter

    Un danach eben mit einer schleife den reader lesen lasen
    Do While (reader.Peek <> -1)
    ...
    loop
    JonDonym
    Eine Anonymisierung-Tool, das nicht nur deine IP verdeckt, sondern deine History, BrowserTyp, Windows-Version etc.
    Das Tool hat ca. 5 FreeKaskaden und ca. 10 Premium. Minimum 5 EUR für ein Volumen von 650MB.

    Kevin12345 schrieb:

    ... .csv Dateien in einem Verzeichnis liegen, und diese dann per Click Ereignis in die jeweilige Tabelle importiert.
    Nur soll das Datagridview jetzt weglassen und direkt über das Datatable importieren.


    Dazu brauchst Du nicht einmal die DataTable, das geht direkt per Query viel einfacher per Bulk Insert.

    Für T-SQL: LINK, LINK
    Für MySQL: LINK, LINK