Einfügeabfrage

M

malone

Guest
Ich baue gerade eine Datenbank mit Access. Ich möchte eine Einfügeabfrage erstellen, die aus mehreren Tabellen die Daten in eine Gesamt Tabelle überträgt. Im folgenden füge ich die Spalten der einzelnen Tabellen an und die Spalten der Gesamt Tabelle. Ich habe es mit dem Code den ich auch unten anhänge schon probiert aber meistens bekomme ich den Fehler das die Anzahl der Abfrage und Zielwerte nicht übereinstimmt. Danke für die Hilfe im Vorraus.
Spalten Qualität 1:

Charge, Material, HS-Typ, Stück, Tauchgänge Vor, Tauchgänge Folge, Tauchgänge HV, Viskosität, Trockengehalt, Wannentemperatur, WPZ-Lot Nr, Anlage, Wanne, Startdatum, Startzeit, Enddatum, Endzeit, Raumtemperatur, Luftfeuchte

Spalten Qualität 2: Charge, HS-Typ, Stück, Tauchgänge Vor, Tauchgänge Folge, Tauchgänge HV, Viskosität2, Trockengehalt2, Wannentemperatur2, WPZ-Lot Nr2, Anlage2, Wanne2, Startdatum2, Startzeit2, Enddatum2, Endzeit2, Raumtemperatur2, Luftfeuchte2

Spalten Vulkanisation: Charge, Soll Minuten, Soll Druck/bar, Soll Temperatur, Geplantes Datum, Taucher, Geändert von, Abgezogen von, Sonstiges Spalten Prüfprotokoll: Charge, HS-Typ, Stück, M1 Fingerspitze, M2 Handinnenfläche, M3 Stulpeninnenseite Mitte, M4 Stulpeninnenseite Rollrand, M5 Rollrand, Länge, Prüfer

Spalten Dichtheitsprüfung: Charge, HS-Typ, Stück, 1 Beginn, 1 Ende, 2 Beginn, 2 Ende, 3 Beginn, 3 Ende, 4 Beginn, 4 Ende, 5 Beginn, 5 Ende, 6 Beginn, 6 Ende, 7 Beginn, 7 Ende, 8 Beginn, 8 Ende, Datum, DPrüfer

Spalten Fehler: Charge, HS-Typ, Stück, Rollrand, Angeschlagen, Fremdkörper, Schwachstellen, Verdickung/Verlaufsspur, Blasen am Finger, Blasen zw den Fingern, Blasen am Stulpen, Blasen an der Handfläche, DDichtheitsprüfung, Sonstige, Summe Ausschuss, Summe Gut

Spalten Gesamt Tabelle: Charge, HS-Typ, Stück, Material, Tauchgänge Vor, Tauchgänge Folge, Tauchgänge HV, Qualität1, Viskosität, Trockengehalt, Wannentemperatur, WPZ-Lot Nr, Anlage, Wanne, Startdatum, Startzeit, Enddatum, Endzeit, Raumtemperatur, Luftfeuchte, Qualität2, Viskosität2, Trockengehalt2, Wannentemperatur2, WPZ-Lot Nr2, Anlage2, Wanne2, Startdatum2, Startzeit2, Enddatum2, Endzeit2, Raumtemperatur2, Luftfeuchte2, Vulkanisation, Soll Minuten, Soll Druck/bar, Soll Temperatur, Geplantes Datum, Taucher, Geändert von, Abgezogen von, Sonstiges, Prüfprotokoll, M1 Fingerspitze, M2 Handinnenfläche, M3 Stulpeninnenseite Mitte, M4 Stulpeninnenseite Rollrand, M5 Rollrand, Länge, Prüfer, Dichtheitsprüfung, 1 Beginn, 1 Ende, 2 Beginn, 2 Ende, 3 Beginn, 3 Ende, 4 Beginn, 4 Ende, 5 Beginn, 5 Ende, 6 Beginn, 6 Ende, 7 Beginn, 7 Ende, 8 Beginn, 8 Ende, Datum, DPrüfer, Fehler, Rollrand, Angeschlagen, Fremdkörper, Schwachstellen, Verdickung/Verlaufsspur, Blasen am Finger, Blasen zw den Fingern, Blasen am Stulpen, Blasen an der Handfläche, DDichtheitsprüfung, Sonstige, Summe Ausschuss, Summe Gut

Hier ein Ansatz des Codes:
´´
INSERT INTO Gesamt ( [Charge], [HS-Typ], [Stück], [Material], [Tauchgänge Vor], [Tauchgänge Folge], [Tauchgänge HV], [Viskosität], [Trockengehalt], [Wannentemperatur], [WPZ-Lot Nr], [Anlage], [Wanne], [Startdatum], [Startzeit], [Enddatum], [Endzeit], [Raumtemperatur], [Luftfeuchte], [Viskosität2], [Trockengehalt2], [Wannentemperatur2], [WPZ-Lot Nr2], [Anlage2], [Wanne2], [Startdatum2], [Startzeit2], [Enddatum2], [Endzeit2], [Raumtemperatur2], [Luftfeuchte2], [Soll Minuten], [Soll Druck/bar], [Soll Temperatur], [Geplantes Datum], [Taucher], [Geändert von], [Abgezogen von], [Sonstiges], [M1 Fingerspitze], [M2 Handinnenfläche], [M3 Stulpeninnenseite Mitte], [M4 Stulpeninnenseite Rollrand], [M5 Rollrand], [Länge], [Prüfer], [1 Beginn], [1 Ende], [2 Beginn], [2 Ende], [3 Beginn], [3 Ende], [4 Beginn], [4 Ende], [5 Beginn], [5 Ende], [6 Beginn], [6 Ende], [7 Beginn], [7 Ende], [8 Beginn], [8 Ende], [Datum], [DPrüfer], [Rollrand], [Angeschlagen], [Fremdkörper], [Schwachstellen], [Verdickung/Verlaufsspur], [Blasen am Finger], [Blasen zw den Fingern], [Blasen am Stulpen], [Blasen an der Handfläche], [DDichtheitsprüfung], [Sonstige], [Summe Ausschuss], [Summe Gut] ) SELECT COALESCE(q1.[Charge], q2.[Charge], v.[Charge], p.[Charge], d.[Charge], f.[Charge]) AS [Charge], COALESCE(q1.[HS-Typ], q2.[HS-Typ], v.[HS-Typ], p.[HS-Typ], d.[HS-Typ], f.[HS-Typ]) AS [HS-Typ], COALESCE(q1.[Stück], q2.[Stück], v.[Stück], p.[Stück], d.[Stück], f.[Stück]) AS [Stück], COALESCE(q1.[Material], '') AS [Material], COALESCE(q1.[Tauchgänge Vor], q2.[Tauchgänge Vor], v.[Tauchgänge Vor], p.[Tauchgänge Vor], d.[Tauchgänge Vor], f.[Tauchgänge Vor]) AS [Tauchgänge Vor], COALESCE(q1.[Tauchgänge Folge], q2.[Tauchgänge Folge], v.[Tauchgänge Folge], p.[Tauchgänge Folge], d.[Tauchgänge Folge], f.[Tauchgänge Folge]) AS [Tauchgänge Folge], COALESCE(q1.[Tauchgänge HV], q2.[Tauchgänge HV], v.[Tauchgänge HV], p.[Tauchgänge HV], d.[Tauchgänge HV], f.[Tauchgänge HV]) AS [Tauchgänge HV], COALESCE(q1.[Viskosität], q2.[Viskosität2]) AS [Viskosität], COALESCE(q1.[Trockengehalt], q2.[Trockengehalt2]) AS [Trockengehalt], COALESCE(q1.[Wannentemperatur], q2.[Wannentemperatur2]) AS [Wannentemperatur], COALESCE(q1.[WPZ-Lot Nr], q2.[WPZ-Lot Nr2]) AS [WPZ-Lot Nr], COALESCE(q1.[Anlage], q2.[Anlage2]) AS [Anlage], COALESCE(q1.[Wanne], q2.[Wanne2]) AS [Wanne], COALESCE(q1.[Startdatum], q2.[Startdatum2]) AS [Startdatum], COALESCE(q1.[Startzeit], q2.[Startzeit2]) AS [Startzeit], COALESCE(q1.[Enddatum], q2.[Enddatum2]) AS [Enddatum], COALESCE(q1.[Endzeit], q2.[Endzeit2]) AS [Endzeit], COALESCE(q1.[Raumtemperatur], q2.[Raumtemperatur2]) AS [Raumtemperatur], COALESCE(q1.[Luftfeuchte], q2.[Luftfeuchte2]) AS [Luftfeuchte], v.[Soll Minuten] AS [Soll Minuten], v.[Soll Druck/bar] AS [Soll Druck/bar], v.[Soll Temperatur] AS [Soll Temperatur], v.[Geplantes Datum] AS [Geplantes Datum], v.[Taucher] AS [Taucher], v.[Geändert von] AS [Geändert von], v.[Abgezogen von] AS [Abgezogen von], v.[Sonstiges] AS [Sonstiges], p.[M1 Fingerspitze] AS [M1 Fingerspitze], p.[M2 Handinnenfläche] AS [M2 Handinnenfläche], p.[M3 Stulpeninnenseite Mitte] AS [M3 Stulpeninnenseite Mitte], p.[M4 Stulpeninnenseite Rollrand] AS [M4 Stulpeninnenseite Rollrand], p.[M5 Rollrand] AS [M5 Rollrand], p.[Länge] AS [Länge], p.[Prüfer] AS [Prüfer], d.[1 Beginn] AS [1 Beginn], d.[1 Ende] AS [1 Ende], d.[2 Beginn] AS [2 Beginn], d.[2 Ende] AS [2 Ende], d.[3 Beginn] AS [3 Beginn], d.[3 Ende] AS [3 Ende], d.[4 Beginn] AS [4 Beginn], d.[4 Ende] AS [4 Ende], d.[5 Beginn] AS [5 Beginn], d.[5 Ende] AS [5 Ende], d.[6 Beginn] AS [6 Beginn], d.[6 Ende] AS [6 Ende], d.[7 Beginn] AS [7 Beginn], d.[7 Ende] AS [7 Ende], d.[8 Beginn] AS [8 Beginn], d.[8 Ende] AS [8 Ende], d.[Datum] AS [Datum], d.[DPrüfer] AS [DPrüfer], f.[Rollrand] AS [Rollrand], f.[Angeschlagen] AS [Angeschlagen], f.[Fremdkörper] AS [Fremdkörper], f.[Schwachstellen] AS [Schwachstellen], f.[Verdickung/Verlaufsspur] AS [Verdickung/Verlaufsspur], f.[Blasen am Finger] AS [Blasen am Finger], f.[Blasen zw den Fingern] AS [Blasen zw den Fingern], f.[Blasen am Stulpen] AS [Blasen am Stulpen], f.[Blasen an der Handfläche] AS [Blasen an der Handfläche], f.[DDichtheitsprüfung] AS [DDichtheitsprüfung], f.[Sonstige] AS [Sonstige], f.[Summe Ausschuss] AS [Summe Ausschuss], f.[Summe Gut] AS [Summe Gut] FROM Qualität1 q1 UNION ALL
´´
 
Werbung:
Hallo Malone, (nur mal so als übliche Begrüßung, wenn man neu hier ist ;-).)

Naja, ich weiss nicht, ob Du jetzt erwartest, das jemand hier für dich die Felder zählt. Die Fehlermeldung ist ja eigentlich eindeutig. Abgesehen davon, wäre es prima, wenn Du Code auch als Code formatieren würdest, was die Lesbarkeit ungemein vereinfachen würde. (siehe drei Punkte in der Kopfleiste rechts des Beitrags.
Ein Tip: Mach das doch mal als Tabellenerstellungsabfrage, dann siehst Du welche Felder (über Spalten redet man bei Excel) im Ergebnis fehlen oder zuviel sind.
 
Werbung:
Als Ergänzung zu @andyfau
Ausgangspunkt für eine (komplexe) Insert Query ist natürlich ein "ordentliches" Selectstatement. Hilfreich vlt gerade in Access ist ggf ein extra View, der das komplexe Statement ersetzt und im Abfrage Assistent besser zu handeln wäre.
Als Textquery (statt Assistent) macht auch dort eine Gut lesbare Formatierung Sinn. Das hilft beim Zählen /Zuordnen. Das gilt nicht nur in einem Forumspost.
 
Zurück
Oben