| |
VB.NET - Ein- und Umsteigervariables 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 | |
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() | |
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... | |
| 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 |
|
|
Neu! sevCommand 4.0
Professionelle Schaltflächen im modernen Design!
Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
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
|
|