Office: (Office 2010) Datum per Insert Into in Tabelle einfügen mit Where

Helfe beim Thema Datum per Insert Into in Tabelle einfügen mit Where in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo, ich stehe mal wieder vor einem Problem, an dem ich nicht weiter komme und bereits fast den ganzen Tag ohne Erfolg rummgoogle. *entsetzt Ich... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von schmierlabbes, 19. Februar 2019.

  1. Datum per Insert Into in Tabelle einfügen mit Where


    Hallo,

    ich stehe mal wieder vor einem Problem, an dem ich nicht weiter komme und bereits fast den ganzen Tag ohne Erfolg rummgoogle. *entsetzt

    Ich habe in einer Tabelle Datensätze die jeweils das Datum und Uhrzeit der Erstellung des DS (Datum_von) und (Uhrzeit_erfasst) und ein geplantes Ablaufdatum (Datum_bis_plan) enthalten. Zusätzlich gibt es noch die Felder (Datum_bis_ist) und (Uhrzeit_abgemeldet) welche bei normalem Verlauf durch eine Prozedur gefüllt werden. Hier nehme ich die ID des aktuellen DS im Formular und fülle die Felder in der Tabelle. Die Datumfelder in der Tabelle sind als Datum,kurz und die Uhrzeitfelder als Uhrzeit, 24 h formatiert.

    Im Anschluss wird der Datensatz ( oder zumindest einige der Felder) per Insert Into in eine andere Tabelle kopiert und in der Ausgangstabelle gelöscht.


    PHP:
             Dim strSQL As StringlngID As Long

    lngID 
    Me!ID
    strSQL 
    "Insert Into Zutritte_ano ([Firma], [Datum_von], [Datum_bis_plan], [Datum_bis_ist], [Uhrzeit_Erfasst], [Uhrzeit_abgemeldet], [Hinweis_ID], [Land_ID]) Select [Firma], [Datum_von], [Datum_bis_plan], [Datum_bis_ist], [Uhrzeit_Erfasst], [Uhrzeit_abgemeldet], [Hinweis_ID], [Land_ID] From [Zutritte] Where Zutritte.ID=" lngID
    CurrentDb
    .Execute strSQL128
    strSQL 
    "Delete * From [Zutritte] Where Zutritte.ID=" lngID
    CurrentDb
    .Execute strSQL128
    :)
     
    schmierlabbes, 19. Februar 2019
    #1
  2. Hallo!

    Die DBEngine kann sich nicht entscheiden, von welcher Tabelle das Feld "strDatum" verwendet werden soll. Mit einem From-Hinweis kannst du bei der Entscheidung helfen. *wink.gif*

    mfg
    Josef
     
    Josef P., 21. Februar 2019
    #2
  3. Hallo,
    prinzipiell ist es keine gute Idee in einer Datenbank Datensätze in eine andere Tabelle zu verschieben. Und wenn es Beziehungen gibt (was sein sollte) wirst Du Probleme bekommen, weil die Verknüpfungen nicht mehr stimmen.

    Du solltest daher das Vorhaben erst noch mal überdenken.

    Warum musst Du in eine andere Tabelle verschieben ?
    Wie unterscheiden sich dann die Daten der verschiedenen Tabellen ?
     
    gpswanderer, 21. Februar 2019
    #3
  4. Datum per Insert Into in Tabelle einfügen mit Where

    Hallo, erstmal Danke für Eure Antworten.
    Der Hintergrund ist folgender, aufgrund der DSG-VO sollen persönliche Daten (also in diesem Fall Firma, Name und Vorname) nur solange gespeichert werden, bis die Person wieder das Gelände verlassen hat. In die neue Tabelle werden also nur Daten und Uhrzeiten, sowie das Herkunftsland und der Besuchsgrund verschoben.
    In der aktuellen Tabelle sind die kompletten DS also nur eine recht kurze Zeit enthalten. Und aus Geschwindigkeitsgründen beim Suchen des Datensatzes bei der Abmeldung möchte ich diese Tabelle eben möglichst klein halten.

    Josef P.: ich möchte in der InsertInto das aktuelle Datum einfügen. strDatum ist eigentlich nicht in der Tabelle, sondern der String, den ich vorher definiert habe:
    Code:
    ich hatte hier zuvor auch schon nur "Date" ausprobiert, aber ebenfalls ohne Erfolg.
    Code:
    Mach ich an der Stelle vielleicht grundlegend etwas falsch ? Wenn ich einen Feldinhalt des aktuellen DS aus dem Formular einfüge, funktioniert es (wie bei der "normalen" Prozedur) hervorragend, aber da ich hier jetzt ja Datensätze anspreche die nicht als aktueller DS im Formular "aktiv sind", und zusätzlich keinen Feldinhalt sondern das akutelle Datum nehmen will ist die Select- Anweisung vielleicht komplett verkehrt ?

    Ich würde mcih sehr über Eure weitere Hilfe freuen...
     
    schmierlabbes, 22. Februar 2019
    #4
  5. In dem Select Statement wird strDatum als Text interpretiert. Wenn der Inhalt der Variable genutzt werden soll, so musst du die Variable mit dem Text "verketten".
    Abgesehen davon - Bei Jet SQL muss dem Select immer eine Herkunfts-Angabe folgen. Wenn du das selbst nicht lösen kannst, so zeige das ganze Statement.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    markusxy, 22. Februar 2019
    #5
  6. Hallo,
    lasse die Daten in der Tabelle wo sie sind und überschreibe die Datenschutz relevanten Felder mit "XXXX" oder ähnlichen Zeichen.
    Die Daten mit Personen bezogenen Daten sollten ohnehin in einer extra Tabelle liegen, wenn es korrekt aufgebaut ist.
    Dann geht die Kopiererei ohnehin schief.

    Ich würde das Vorhaben noch mal überdenken.
     
    gpswanderer, 22. Februar 2019
    #6
  7. Hallo zusammen,

    @Klaus: Ich möchte einfach die Tabelle mit den aktuell anwesenden Personen kurz halten und das kopieren macht ja auch nicht die Probleme.
    Das Problem ist, das Datum und die Uhrzeit automatisch in die entsprechenden Felder einzutragen. Das hätte ich auch wenn ich dann die anderen Felder überschreiben würde.


    @markusxy: Ich bin noch nicht so ganz verständig, was Du mit verketten meinst.

    Nochmal zum Verständnis, der Code soll beim Aufrufen alle Datensätze in der Tabelle "Zutritte" prüfen, ob im Feld [Datum_bis_plan] das Datum einen Tag kleiner ist als das aktuelle Datum. Dann soll im Feld [Datum_bis_ist] das aktuelle Datum und im Feld [Uhrzeit_abgemeldet] die aktuelle Uhrzeit eingetragen werden.

    Hier der Code, wie er nicht funktioniert:
    Code:
     
    schmierlabbes, 25. Februar 2019
    #7
  8. Datum per Insert Into in Tabelle einfügen mit Where

    Hallo,
    das halte ich für falsch. Und Platz sparst Du auch keinen, Du hast ja dadurch eine weitere Tabelle und Verwaltungsaufwand.
    Daten auslagern in andere Tabelle(n) ist eigentlich ein typischer Anfängerfehler.

    Außerdem, wirst Du mit Sicherheit Probleme kriegen, wenn die Datenbank korrekt aufgebaut ist mit Beziehungen und referentieller Integrität. Wie es in einer Datenbank sein sollte. Da gibt es dann verwaiste Datensätze und weitere Datenprobleme.
    Ich würde es sein lassen.
     
    gpswanderer, 25. Februar 2019
    #8
  9. Der Fehler ist nicht beim Vergleich sondern früher zu suchen.
    Die Variable strDatum ist innerhalb der Zeichenkette nicht als solche erkennbar.

    Unabhängig davon, was zur Sinnhaftigkeit gesagt wurde, gibt es ja die Möglichkeit eines Insert ohne die SELECT Anweisung:
    Code:
    Oder alternativ, wenn denn die anderen Felder auch irgendwoher kommen: Code:
     
    hcscherzer, 25. Februar 2019
    #9
  10. Hallo Hans-Christian,

    vielen Dank für Deine Hilfe. Ich habe den Code jetzt umgestellt und vergleiche mit Date.
    Code:
    Jetzt bekomme ich die Fehlermeldung:

    Wo kommt das jetzt wieder her ? Ich verweise doch auf die Tabelle "Zutritte".

    Kann mir da jetzt noch jemand den Schubs in die richtige Richtung geben ?

    Danke schon mal...

    LG.
    Christoph
     
    schmierlabbes, 26. Februar 2019
    #10
  11. Moin,
    das ist vermutlich keine Anfüge- sondern eine Aktualisierungsabfrage:

    Code:
    maike
     
  12. Die WHERE Klausel ... worauf soll die sich denn beziehen?
    Bei UPDATE macht das Sinn, wenn nur bestimmte Sätze aktualisiert werden sollen.
    Aber bei einem INSERT werden Daten angefügt und da würde ein WHERE nur Sinn machen für ein FROM, also wenn die anzufügenden Daten aus einer anderen Quelle kommen.
     
    hcscherzer, 26. Februar 2019
    #12
  13. Datum per Insert Into in Tabelle einfügen mit Where

    Die Where Klausel soll prüfen, ob in einem oder mehreren Datensätzen in der Tabelle Zutritte das Datum im Feld [Datum_bis_plan] kleiner ist, als das heutige (das aktuelle) Datum. Wenn das so ist, soll in das Feld [Datum_bis_ist] das aktuelle Datum eingetragen werden.

    Ich will also von dem Formular, welches über den Filter ID nur einen Datensatz anzeigt, in der Tabelle ggfs. mehrere Datensätze verarbeiten.
     
    schmierlabbes, 26. Februar 2019
    #13
  14. Es ist also eine Aktualisierung, kein Anfügen.
    maike
     
  15. Hallo Maike, das stimmt.
    Der oder die Datensätze sind bereits vorhanden in der Tabelle Zutritte. Es sollen nur die Felder [Datum_bis_Ist] und [Uhrzeit_abgemeldet] gefüllt werden, wenn das aktuelle Datum größer ist, als das Datum im Feld [Datum_bis_plan].


    Oh ich habe Deine erste Antwort komplett übersehen... Teste das mal... Sorry...
     
    schmierlabbes, 26. Februar 2019
    #15
Thema:

Datum per Insert Into in Tabelle einfügen mit Where

Die Seite wird geladen...
  1. Datum per Insert Into in Tabelle einfügen mit Where - Similar Threads - Datum Insert Into

  2. Serienbrief, Datum plus 7 Tage

    in Microsoft Word Hilfe
    Serienbrief, Datum plus 7 Tage: Hallo, ich wollte gerne in meinem Serienbrief um eine Rückantwort mit Datum bitten. Die Rückantwort soll 7 Tage nach dem aktuellen Datum erfolgen. Ich habe dazu folgendes gemacht: [ATTACH] Mein...
  3. letztes Datum finden

    in Microsoft Excel Hilfe
    letztes Datum finden: Hallo Leute, hab jetzt vergebens die KI bemüht mir eine einfache Formel zu erstellen.o_O Jetzt frag ich einfach mal hier da es ja meist besser funzt.*:)* Also: ich hab ne Tabelle in der ich in...
  4. Datum Suchen

    in Microsoft Excel Hilfe
    Datum Suchen: Hallo! Situation: In einem Formular wird ein Name einer Produktionsmaschine eingetragen. In einem anderem Textfeld steht das Lieferdatum. Bei klicken auf "Speichern" wird das Lieferdatum...
  5. Aktuelles Datum und Uhrzeit in Formular

    in Microsoft Word Hilfe
    Aktuelles Datum und Uhrzeit in Formular: Hallo, zunächst ein herzlichen Dank für die Aufnahme in diesem Forum und hoffe, dass mir jemand bei meinem Problem behilflich sein kann. Ich bin aktuell dabei ein Formular zu erstellen. Das...
  6. Summieren an Hand der letzten x Datums Werte und mit weiteren Kriterien

    in Microsoft Excel Hilfe
    Summieren an Hand der letzten x Datums Werte und mit weiteren Kriterien: Schönen guten Abend, Wie kann man am besten Summieren mit mehreren Kriterien eines soll davon das Datum sein. So das vom Aktuellen Letzten Datums Wert aus gehent die letzten Bsp. 10 Werte...
  7. Zelle farblich markieren wenn Datum

    in Microsoft Excel Hilfe
    Zelle farblich markieren wenn Datum: Hallo zusammen, ich bräuchte einmal Eure Hilfe: In einer Tabelle habe ich ein Kontrollkästchen und ein Datumsfeld. J4 Kontrollkästchen K4 Datum Durch bedingte Formatierung habe ich es so...
  8. Fortlaufendes Datum im Kopf für je 2 Seiten

    in Microsoft Word Hilfe
    Fortlaufendes Datum im Kopf für je 2 Seiten: Hallo zusammen, und zwar würde ich gerne ein laufendes Datum in die Kopfzeile eines Word-Dokumentes setzen. Es sind jeweils 2 aufeinanderfolgende zusammengehörige Seiten mit einem Datum...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden