vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

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

ADO.NET / Datenbanken
Re: Einige Datenbank-Frangen - m:n Beziehung Datensätze hinzufügen 
Autor: Bismosa
Datum: 21.08.14 15:05

Hallo!

2) Also müsste ich doch um doppelte Datensätze zu vermeiden eine Abfrage vorher machen. Ich könnte ja sonst durch den neuen Primärschlüssel die gleichen Daten nochmals einfügen.

3) Gut. Dann hier mal mein Vorhaben (ob ich es jemals umsetzen kann...mal schauen...)
Ich habe viele ähnliche Word-Dokumente. Diese Worddokumente enthalten mehrere unterschiedliche ausgefüllte Formulare (mit ContentControls). Die reinen Formulardaten möchte ich mir in eine Datenbank sichern um mal schnell die Dokumente zu vergleichen bzw. darin zu suchen.

In meiner bisherigen Datenbank habe ich viele Tabellen. Eine für die Dokumentinformationen, eine mit den ContentControls (ohne enthaltenen Text) und eine für jede Seite mit den entsprechenden Inhalten. Wobei die Spaltenbeschriftung = Name vom ContentControl ist. Zusätzlich noch die ID von DokInfo. Wird alles per Code erzeugt...aber völlig unpraktikabel (dafür aber einfach zu pflegen...da nur Tabellen und keine wirkliche Datenbank gepflegt wird)

Daher habe ich jetzt einen neuen Ansatz:

Ich habe so eine Tabelle mit den Dokument Informationen der Word-Datei, eine Hilfs-Tabelle für die einzelnen Seiten, eine Hilfstabelle für die einzelnen Ausfüllfelder (ContentControls CC) und dann die Datentabelle mit den einzelnen CC.

Ich kann mir damit z.B. zu einer Maschinennummer(DokInfo) die entsprechenden Seiten mit den enthaltenen ContentControls anzeigen. Aber neue Datensätze zu erzeugen...das ist für einen Anfänger schwierig.
Ich habe es jetzt mal versucht mit einem Typisiertem DataSet. Der Designer will mir keine Update/Insert Befehle erzeugen, da die Abfragen dann ja nur zur Darstellung sind? Wie müsste ich die Abfrage logisch aufbauen, das ich neue Datensätze (Also z.B. eine bestimmte Seite die in einer bestimmten Maschine ist bekommt 20 ContentControls)

Ich würde jetzt manuell eigentlich so vorgehen, wenn ich ein neues Dokument einlese:
- ContentControls zur Datenbank hinzufügen (vorher prüfen, ob es nicht bereits redundante Daten gibt)
Die ID´s der Datensätze merken
- Dokinfo (wenn nicht vorhanden) in die Datenbank einfügen
- SeitenName (wenn nicht vorhanden) in die Datenbank einfügen
- Eine Zeile zu "Hilfstabelle_Seiten" hinzufügen (Verknüpfung zwischen DokInfo und der Seite)
- Die Zeilen mit den gemerkten ID´s zu "Hilfstabelle_Seite-CC" hinzufügen

Wenn sich ein Datensatz ändert wird es schwieriger:
- Es muss zuerst geprüft werden, welche Datensätze "Hilfstabelle_Seite-CC" entfallen
- Es muss dann geprüft werden, welche CCInfo-Zeilen betroffen sind -> und geprüft werden, ob diese nicht noch woanders benutzt werden
- Das gleiche bei den SeitenNamen

In einer einzelnen Tabelle würde ich einfach nur die Zeile Updaten und fertig.


Danke für die Hilfen!
Gruß
Bismosa
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Einige Datenbank-Frangen - m:n Beziehung Datensätze hinzufüg...2.779Bismosa20.08.14 14:57
Re: Einige Datenbank-Frangen - m:n Beziehung Datensätze hinz...1.981Manfred X20.08.14 20:24
Re: Einige Datenbank-Frangen - m:n Beziehung Datensätze hinz...1.873Bismosa21.08.14 12:23
Re: Einige Datenbank-Frangen - m:n Beziehung Datensätze hinz...1.820Manfred X21.08.14 12:57
Re: Einige Datenbank-Frangen - m:n Beziehung Datensätze hinz...1.792Bismosa21.08.14 15:05
Re: Einige Datenbank-Frangen - m:n Beziehung Datensätze hinz...1.835Manfred X21.08.14 15:41

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-2025 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