Office: Datum in Where Bedingung auf verschiedene Datenbanken

Helfe beim Thema Datum in Where Bedingung auf verschiedene Datenbanken in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo, wir haben hier eine Datenbank die von Access auf SQL Server umziehen soll. Bisher wurde hier viel mit DAO gearbeitet. Als ersten Schritt würde... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Axelander, 3. Oktober 2010.

  1. Datum in Where Bedingung auf verschiedene Datenbanken


    Hallo,
    wir haben hier eine Datenbank die von Access auf SQL Server umziehen soll. Bisher wurde hier viel mit DAO gearbeitet. Als ersten Schritt würde ich gerne von DAO auf ADO umsteigen, so dass ich nach und nach alle Tabellen umziehen kann und nur noch die Connection ändern muss.

    Allerdings habe ich hier ein Problem mit Datumsfeldern in der WHERE Klausel. Bisher sah eine Funktion z.B. so aus:

    Code:
    Wenn ich diese auf ADO umbaue, muss ich je nachdem ob ich auf eine Access Datenbank oder auf einen SQL Server selektiere die Where Bedingung anders schreiben:

    Access
    Code:
    SQL-Server
    Code:
    Gibt es denn keine Variante für das Datum welches sowohl mit Access als auch mit dem SQL Server funktioniert?

    Gruß
    Alex

    :)
     
    Axelander, 3. Oktober 2010
    #1
  2. Hallo Alex,

    das wäre evtl. ein Fall für "BuildCriteria"!
    Versuch es mal so:
    Code:
    Gruß

    LL
     
  3. Eigentlich müsstest du nur den Rückgabewert von SqlDate ändern. Das sollte eigentlich keine Problem sein, wenn du keinen gemischten Betrieb (Zugriff auf Jet und MSSQL gleichzeitig) benötigst. Eine saubere Kapselung von Aufgaben muss ja auch einmal belohnt werden. *wink.gif*

    Alternativ könntest du komplett auf das Zusammensetzen von SQL-Anweisungen in einem String verzichten und z. B. ADODB-Command mit Parametern einsetzen.

    mfg
    Josef
     
    Josef P., 5. Oktober 2010
    #3
  4. Datum in Where Bedingung auf verschiedene Datenbanken

    Hallo
    @Louisleon
    das:
    Code:
    geht doch einfacher braucht doch nicht 2 Krit
    z.B. wenn man Between und AND verwendet
    BuildCriteria("TDatum", dbDate, "between " & _
    (CDate(StrVon)) & " And " & (CDate(datBis)))
    s. Anhang
    hilft aber dirkt serv. nichts beim Problem
     
    Lanz Rudolf, 5. Oktober 2010
    #4
  5. raist10, 5. Oktober 2010
    #5
  6. Hallo an alle erst einmal *Smilie

    @LL:
    Also, die Lösung mit BuildCriteria bringt mir leider nichts, da dieser ja MS-Access SQL Syntax zusammenbaut. Diese mag der SQL Server aber nicht.

    @josef:
    Genau das war die Idee, das SQLDate umzubauen. Allerdings eben genau mit dem Hintergedanken, dass ich nur 1 Stelle umbauen muss. Allerdings kann ich dann mit meinen oben beschriebenen Lösungen entweder nur noch auf Access Tabellen oder nur noch auf SQL Server Tabellen.

    Was ich suche wäre ein Umbau für die SQLDate so dass ich diese sowohl für Access Tabellen als auch für SQL Server Tabellen verwenden kann. Ansonsten müsste ich ja alle Tabellen bei welchen ich das verwende gleichzeit von Access auf SQL Server umstellen und das wären mir ein paar zu viele *Smilie

    Gruß
    Alex
     
    Axelander, 6. Oktober 2010
    #6
  7. Diese Weiche könntest du per Code einstellbar machen. *Smilie

    Falls es je kompilierter Anwendung nur eine Datenquelle gibt, könntest du Compiler-Konstanten verwenden.
    Falls das flexibel sein soll, könntest du in SqlDate-Prozedur abfragen, welcher SQL-Dialekt benötigt wird.

    Beispiel (Luftcode!):
    Code:
    Anm.: SqlDialekt könnte eine Anwendungseigenschaft oder FUnktion sein, die den gerade aktuell benötigten SQL-Dialekt liefert.


    Und jetzt gehe ich noch einen kleinen Schritt weiter in Richtung Klassen.
    Die SQL-spezifischen Formate, Eigenschaften usw. könntest du auch in Klassen kapseln und dann je Datenbank die passende Klasse instanziieren.

    Beispiel:
    Interface: ISqlTools
    Code:
    Klasse: JetSqlTools
    Code:
    Klasse: TransactSqlTools
    Code:
    In einem Standardmodul:
    Code:
    Verwendung:
    Code:
    Anm.: obiges ist alles Luftcode, daher bitte nur als Beschreibung eines möglichen Konzeptes verstehen. *wink.gif*

    mfg
    Josef
     
    Josef P., 6. Oktober 2010
    #7
  8. Datum in Where Bedingung auf verschiedene Datenbanken

    \@ Alexander

    Lies Dir bitte mal den Link den ich oben gepostet habe durch. Dort wird beschrieben wie Du an die nötigen Informationen für das Datumsformat für den SQL-Server aus der connection.PROPERTIES-Auflistung rankommst.

    Was im Umkehrschluß doch nur bedeuten kann, dass jedes Connection-Object Informationen zu der Verbindung beinhaltet aus denen Du vermutlich irgendwo auslesen kannst ob es eine Verbindung zur einer Access-DB ist oder zu einem SQL-Server.

    Was mich schlicht zum dem Schluß bringt das die Auswertung zu was die Connection besteht Dir doch helfen sollte in der Prozedur SQLDate zu entscheiden welches Datums-Format Du zur Anwednung bringst.

    Gruß

    Rainer

    P.S.: Ach verdammt Josef war mal wieder schneller und ausführlicher *wink.gif*
     
    raist10, 6. Oktober 2010
    #8
  9. \@Ruedi
    @Alexander
    Sorry, da bin ich wohl falschen Informationen aufgesessen. Mir wurde das als "DB-unabhängiges" Verfahren verkauft universelle Kriterien zu erstellen. *wink.gif*

    Gruß

    LL
     
  10. Hallo Alexander,

    Doofe Frage:

    Umzug auf SQL-Server - klar. Aber warum zugleich die Umstellung von DAO auf ADO? Wenn der Backend von Access nach SQL-Server gewechselt wird, ist der Umstieg erst mal nicht so groß und kostet nicht so viel (Zeitaufwand).

    Wenn du die Tabellen des SQL-Servers einbindest, kannst du ganz normal auf diese zugreifen.

    Ich habe die letzten Monate eine Anwendung mit Oracle-Backend erweitert und diese setzt auch verknüpfte Tabellen und Views von Oracle ein und nur bestimmte Zugriffe werden üb er ADO und andere über DAO gelöst.

    Gruß

    Frank
     
    fhentzsc, 6. Oktober 2010
    #10
  11. Hallo
    @LL
    das was Du in deinem schönen Englishen Zitat beschreibst
    ist ja mit meinem BuildCriteria in dem Anhang ja erfüllt (in StrCrit)
     
    Lanz Rudolf, 7. Oktober 2010
    #11
  12. \@Ruedi
    ??
    "SP_Start" und "SP_Ende" sind aber imo zwei Felder.
    Code:
    bezieht sich nur auf ein Feld "TDatum"

    Oder was meinst Du?

    Gruß

    LL
     
  13. Datum in Where Bedingung auf verschiedene Datenbanken

    Hallo
    Ja sicher
    doch ich denke mit Between ist das nicht Das gleiche wie mit >= /
     
    Lanz Rudolf, 8. Oktober 2010
    #13
Thema:

Datum in Where Bedingung auf verschiedene Datenbanken

Die Seite wird geladen...
  1. Datum in Where Bedingung auf verschiedene Datenbanken - Similar Threads - Datum Where Bedingung

  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. Datum per Insert Into in Tabelle einfügen mit Where

    in Microsoft Access Hilfe
    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...
  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