vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
variables ungebundenes Datagridview in Access speichern 
Autor: Tommi467
Datum: 10.08.18 08:36

Hallo zusammen,

ich benötige mal eine Idee oder einen Anstoß.

Ich muss Daten aus Textdateien verarbeiten, die eine ziemlich eigenwillige Formatierung haben.
Es werden zwar die Datensätze der Reihe nach eingelesen, aber die Datenfelder sind weder feste
definiert noch kommen sie in der gleichen Reihenfolge.
Also, in einer Datei gibt es die Felder A, B, C in der nächsten Datei gibt es vielleicht A, C, E.
wobei die Felder aber in der Reihenfolge ABC, CBA, BCA oder wie auch immer abgelegt sind.

Ich habe nun die Idee, die Daten so wie sie eingelesen werden in ein Datagridview abzulegen.
So kann ich die Felder am besten zuordnen.

Aber wie kann ich dann ein ungebundenes Datagridview in eine Access-Datei speichern?

Wohlgemerkt, Feldnamen und Anzahl können jedes Mal variieren,
die accdb soll aber nur das enthalten, was im Datagridview enthalten ist.

Für Denkanstöße und/oder einem Demosource wäre ich sehr dankbar
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: variables ungebundenes Datagridview in Access speichern 
Autor: Tommi467
Datum: 10.08.18 09:04

Hab in der Zwischenzeit etwas gefunden.

Wenn keiner einen besseren Vorschlag hat, würde ich mit ADOX.Catalog arbeiten.
Dabei könnte ich die Datagridview-Header auslesen und die entsprechenden Felder
deklarieren:
        ' create the empty DB file
        Dim cat As New ADOX.Catalog()
        cat.Create("Provider=Microsoft.ACE.OLEDB.12.0;Data" & _
          "Source=c:\temp\mydata.accdb")
        cat = Nothing
 
        ' create the empty table in the DB file
        Dim conn As New OleDb.OleDbConnection( _
          "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\temp\mydata.accdb" _
          & ";Persist Security Info=True")
        conn.Open()
        Dim cmd As New OleDb.OleDbCommand("", conn)
        cmd.CommandText = "CREATE TABLE ICM (cn CHAR, mail CHAR," & _
          "userCertificate CHAR);"
        cmd.ExecuteNonQuery()
        conn.Close()
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: variables ungebundenes Datagridview in Access speichern 
Autor: Tommi467
Datum: 10.08.18 12:00

Ich brauche doch noch einmal Hilfe !!!

Ich habe den obigen Source jetzt wie folgt geändert:


        For I = 0 To DataGridView1.ColumnCount - 1
 
            cmd.CommandText = "ALTER TABLE LOGBOOK ADD COLUMN [" & _
              DataGridView1.Columns(I).Name & "] CHAR"
            cmd.ExecuteNonQuery()
 
        Next
Aber bereits in der 5 oder 6 Spalte kommt die Meldung "DATENSATZ ZU GROß"

Was mache ich falsch? Ich habe Dateien, da sind teilweise 20 bis 25 Felder drin...
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel