Mit einem Anwendungstyp von 16 bis 32 Bit

http://www.jobst-software.com
Datenbankprogrammierung / SQL

 


Versionsunabhängigkeit von 2,0 bis 2.007

Die Praxis zeigt, daß man versionsunabhängige Datenbank-Anwendungen
bei Beachtung von u.a. folgenden Punkten erstellen kann:

Vermeidung von Abhängigkeiten zu bestimmten ISAM-Treibern
Nicht alle ISAM-Treiber finden sich möglicherweise in der Nachfolgeversion wieder.
Vermeidung von Declare - Funktionen
Externe Funktionen dieser Kategorie führen generell zu Konvertierungsmeldungen, die dann manuel zu beseitigen sind.
Die Konstante Null als Standardwert führt unter 32-Bit zum "Null"-Text.
Der Operator + bei einer Basic-Stringverkettung
führt unter 32-Bit zu Typfehlern. Besser mit &.
Der Datentyp "Ja/Nein" bei einer Basic-Stringverkettung
führt unter 32-Bit zu "Wahr" oder "Falsch". Die z.B. damit erstellte SQL-Anweisung ist dann prompt fehlerhaft.
Die Konvertierung von Strings mit "Zahlen und Prozentzeichen" (z.B.: 10%) zu Zahlenwerten
führt unter 32-Bit zu "10" anstatt zu "0,10".
Funktionen mit ByVal - Verwendung
führen unter 32-Bit, bei Verwendung in Abfragen, zu Abstürzen.
Der Stringvergleich "x" = "x "
führt unter 32-Bit zur Ungleichheit.
Der Stringvergleich "-" < " "
ist unter 32-Bit wahr.
Der Vergleich asc("-") > asc(" ")
ist unter 32-Bit auch wahr.
Datumsformat "ddd"
führt unter 32-Bit zu einem 2-stelligem Ergebnis.
Um Zeitfensterdefinitionen aus dem Wege zu gehen sollten Datumskonstanten
möglichst im Bereich zwischen #01.01.1990# und #31.12.2020# gesetzt werden.
Die Gütigkeitsregel "zwischen #01.01.1990# und #31.12.2020#" ist generell für Datumsfelder empfehlenswert, um die Speicherung von falschen Datumswerten zu vermeiden.
Die Behandlung eines Feld-Ereignisses _KeyPress mit Änderung von KeyAscii
bleibt unter 32-Bit ohne Wirkung.
Anstatt OpenQueryDef()
sollte QueryDefs verwendet werden. Das geht überall.
Vor dem Update in Unterformularen
sollte auf eine Speicherung des Hauptformulares geachtet werden, um unnötige Fehlermeldungen (wegen Integritätsverletzungen) zu vermeiden.
Die Länge von Feldnamen sollte auf 20 Stellen beschränkt bleiben.
Anstatt Dynaset und Snapshot
sollte RecordSet verwendet werden.
Symbolleisten
Bei der 2001er ist die Neuerstellung der Symbolleiste einzuplanen.

 


Nichtfunktionelle Änderungen beim Wechsel auf spätere Versionen

Benutzersperren
Öfters mal eine Sperrmeldung bei Nutzung der Datenbank von mehreren Leuten, sollte man bei neueren Versionen vermehrt einplanen. Das Ändern von Formularen und Berichten, bei gleichzeitig angemeldeten Datenbankanwendern, geht ab der 2000er Version nicht mehr.
Also alle abmelden und nach erfolgter Formular- oder Berichtsanpassung wiedereinsteigen.
Joins zwischen Tabellen
bei Version 2000 zur Vorgängerversion, können bei Textfeldern zu unerwarteten Ergebnissen führen. Diese Möglichkeit nutzte man bei früheren Versionen zu einem sanfteren Versionsumstieg.
Datenbank-Grösse / Anzahl der Plattenzugriffe
Die Anforderungen an Plattenlaufwerke und Netzwerk ändern sich. Ihre Datenbank kann untertags um mehrere 100% anwachsen, um dann abend's auf z.B.: 30% zusammenkomprimiert zu werden.
Fehlerzahl
Achten Sie bitte genauer auf die Datensicherung. Bitte heben Sie sich auch Sicherungsstände zu jedem Monats-, Quartals- und Jahresende auf, da vermehrt auch schleichende Fehler - die nicht softort zu Tage treten - zu beobachten sind.
Bei gleichzeitigem Einsatz anderer Programme auf Bibliotheksverträglichkeiten genauer achten.
Ohne clientseitige Programminstallation
gehts bei den neueren Verionen nicht mehr. Eine Installation, bei der alle Dateien (.exe, .dll, .ini und die Daten) auf dem Server liegen ist zuletzt mit der 2.0er gelungen.
Der Umfang hat sich deutlich verändert (von 10 auf 150 MB). Die zwingende Installation von bestimmten Programmen (Internet-Browser) sollte ab der 2000er ebenfalls abgeklärt werden.
Features für die Sicherheit auf Benutzerebene
stehen in Datenbanken mit einem der neuen Dateiformate (ACCDB, ACCDE, ACCDC, ACCDR) nicht zur Verfügung.

 


Modul "backupMod.bas"

zwecks Textsicherung und Rücksicherung von Abfragen, Formularen, Berichten, Makros und Modulen:

Diese Datei bzw. dieses Modul
dient als Ergänzung der Funktionalität Reparieren/Komprimieren
und zum Auslesen von Definitionen zur Übertragung auf Alternativen:

Die Textdatei backupMod.bas ist unter http://www.jobst-software.com/download/backupMod.bas hinterlegt. 



E-Mail: jobst@jobst-software.com http://www.jobst-software.com