Der Datenbankverwalter kann die formale Korrektheit von Anwenderdaten und Indizes mit der Utility-Anweisung CHECK FORMAL prüfen. Die Prüfung der formalen Korrektheit umfasst im Wesentlichen die Prüfung SESAM/SQL-interner Blöcke und Tabellen.
Mit CHECK FORMAL prüft der Datenbankverwalter wahlweise eine einzelne Basistabelle, einen einzelnen Index oder alle Basistabellen und Indizes eines Anwender-Space.
CHECK FORMAL wird auch zugelassen auf Replikate und auf SESAM-Sicherungsbestände, die im SQL-Datenbankverzeichnis enthalten sind. Ein CHECK FORMAL auf Fremdkopien ist möglich, wenn die Fremdkopie als Datenbank im SQL-Datenbankverzeichnis eingetragen wird. Damit sie ihre Eigenschaft als Fremdkopie nicht verliert, muss sie mit ACCESS=READ eingetragen werden.
Die Datenbank, deren Spaces, Tabellen oder Indizes geprüft werden sollen, muss im SQL-Datenbankverzeichnis des DBH mit der Eigenschaft ADMIN eingetragen sein, damit defekte Spaces auch als defekt markiert werden.
Ist die Datenbank mit ACCESS=READ, als Sicherungsbestand oder als Replikat eingetragen, wird ein fehlerhafter Space nicht als defekt markiert. Hinweise auf den Fehler erhalten Sie dann nur im SQLSTATE und in der Fehlerdatei.
Fehlerdatei für CHECK FORMAL
SESAM/SQL legt für CHECK FORMAL eine Fehlerdatei an oder schreibt die bestehende fort, wenn CHECK FORMAL Inkonsistenzen feststellt.
Der Dateiname in der BS2000-Benutzerkennung des DBH lautet: catalog.space.EXC.C
catalog space |
Name der Datenbank Name des Anwender-Space, auf dem die Formalprüfung durchgeführt wird Bei CHECK FORMAL TABLE für eine partitionierte Tabelle wird für jede fehlerhafte |
EXC.C |
Defaultwert des Namens der Fehlerdatei für CHECK FORMAL-Anweisungen |
Zu jeder entdeckten Inkonsistenz trägt SESAM/SQL einen Satz in die Fehlerdatei ein. Die Fehlerdatei wird von SESAM/SQL nur dann angelegt bzw. verwendet, wenn tatsächlich Inkonsistenzen festgestellt werden.