ING_DB
This commit is contained in:
parent
6cb1457382
commit
48edad2e85
|
|
@ -0,0 +1,110 @@
|
|||
AMX(MUTOS) DABA16 AMX(MUTOS)
|
||||
|
||||
NAME
|
||||
amx - AMX-Compiler
|
||||
|
||||
UEBERSICHT
|
||||
amx [ flags ] file.x
|
||||
|
||||
amxf [ flags ] file.x
|
||||
|
||||
samx [ flags ] file.x
|
||||
|
||||
oamx [ flags ] file.x
|
||||
|
||||
oamxf [ flags ] file.x
|
||||
|
||||
BESCHREIBUNG
|
||||
AMX bietet dem Nutzer die Moeglichkeit (aehnlich EQL), Da-
|
||||
tenbankoperationen aus C-Programmen heraus auszuloesen. Das
|
||||
AMX-Interface besteht aus dem AMX-Compiler und einer AMX-
|
||||
Laufzeit-Bibliothek. Der Aufruf des AMX-Compilers umfasst
|
||||
den Aufruf des DABA-AMX-Praecompilers und den Aufruf von cc
|
||||
(einschliesslich Linker).
|
||||
|
||||
Die verschiedenen Aufrufversionen des AMX-Compilers sind
|
||||
durch verschiedene spezifische Unterstuetzungen der Be-
|
||||
triebssysteme bedingt.
|
||||
|
||||
Normalerweise (MUTOS) ist fuer den Aufruf des AMX-Compilers
|
||||
amx zu benutzen.
|
||||
|
||||
In Betriebssystemen mit der Moeglichkeit einer Segmentierung
|
||||
der ausfuehrbaren Programme kann samx benutzt werden.
|
||||
|
||||
Bei der Moeglichkeit der Erzeugung einer Ueberlagerungs-
|
||||
struktur (Overlay-Struktur) koennen entweder oamx oder oamxf
|
||||
verwendet werden.
|
||||
|
||||
Ein Suffix f fuer amxf und oamxf ist das Kennzeichen, dass
|
||||
ein zu Fortran compatibler C-Code entsteht.
|
||||
|
||||
Die fuer AMX notwendigen AMX-Laufzeit-Bibliotheken (Stan-
|
||||
dard: .../lib/libamx.a) sind bereitgestellt und werden auto-
|
||||
matisch angeschlossen.
|
||||
|
||||
Compilationsbedingungen
|
||||
|
||||
Alle AMX-Programme muessen mit dem Suffix .x enden.
|
||||
|
||||
Wenn der AMX-Compiler ein AMX-Programm uebersetzen soll, ar-
|
||||
beitet dieser als Nutzer daba. Damit das uebersetzte Pro-
|
||||
gramm in das Directory, in dem sich das File file.x befin-
|
||||
det, geschrieben werden kann, muss der Nutzer daba in diesem
|
||||
Directory Schreiberlaubnis besitzen.
|
||||
|
||||
Das durch den AMX-Compiler erzeugte Programm besitzt den
|
||||
File-Modus oktal "6755". Es ist beim Kopieren des Files zu
|
||||
sichern, dass dieser Modus erhalten bleibt.
|
||||
|
||||
Die Spezifikation des File-Namen erfolgt, wie ueblich, als
|
||||
absoluter oder relativer Pfadname.
|
||||
|
||||
Es ist moeglich, mit einem amx Aufruf mehrere AMX-
|
||||
Objektmoduln zu erzeugen.
|
||||
|
||||
Wenn mehrere Objektmoduln zu einem ausfuehrbaren Programm
|
||||
verbunden (Linken) werden, darf von diesen nur ein einziger
|
||||
Objektmodul AMX-Anweisungen enthalten.
|
||||
|
||||
Compilation
|
||||
|
||||
Um ein AMX-Programm vorzuuebersetzen, zu compilieren und zu
|
||||
verbinden (Linken), d.h. um ein abarbeitungsfaehiges Pro-
|
||||
gramm zu erzeugen, ist zu spezifizieren:
|
||||
|
||||
amx -o file file.x.
|
||||
|
||||
Es koennen alle von cc her bekannten flags verwendet werden.
|
||||
|
||||
BEISPIELE
|
||||
Erzeugen eines Objektmoduls aus einem Qullmodul:
|
||||
|
||||
amx -c -O neuheit.x
|
||||
|
||||
Erzeugen eines Programmes aus einem Objektmodul:
|
||||
|
||||
amx -o neuheit neuheit.o
|
||||
|
||||
Erzeugen eines Programmes aus einem AMX-Quellmodul:
|
||||
|
||||
amx -O -o neuheit neuheit.x
|
||||
|
||||
Erzeugen eines Programmes aus einem AMX- und einem C-
|
||||
Quellmodul:
|
||||
|
||||
amx -O -o neuheit neuheit.x zusatz.c
|
||||
|
||||
Erzeugen von Objektmoduln aus eienem AMX- und einem C-
|
||||
Quellmodul:
|
||||
|
||||
amx -c -O neuheit.x zusatz.c oder
|
||||
amx -c -O neuheit.x; cc -c -O zusatz.o
|
||||
|
||||
Erzeugen eines Programmes aus Objektmoduln:
|
||||
|
||||
amx -o neuheit neuheit.o zusatz.o
|
||||
|
||||
|
||||
SIEHE AUCH
|
||||
amx(daba), libamx(files)
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
APPEND(QL) DABA16 APPEND(QL)
|
||||
|
||||
NAME
|
||||
append - Anfuegen (Einfuegen) neuer Tupel an die Relation
|
||||
|
||||
UEBERSICHT
|
||||
append [to] relname (target_list) [where qual]
|
||||
|
||||
BESCHREIBUNG
|
||||
Append fuegt Tupel, welche die Qualifikation qual erfuellen,
|
||||
an die Relation relname, wobei relname der Name einer beste-
|
||||
henden Relation sein muss. Die target_list (Ziel- oder Er-
|
||||
gebnisliste) spezifiziert die Werte der Attribute, die an
|
||||
relname anzufuegen sind.
|
||||
|
||||
Die Funktionen int1, int2 usw. konvertieren Zeichen in nume-
|
||||
rische Werte (ql(iql)).
|
||||
|
||||
Das Schluesselwort all kann verwendet werden, wenn alle Do-
|
||||
maenen einer Relation angefuegt werden sollen.
|
||||
|
||||
Ein append kann nur durch den Relations-Eigentuemer oder ei-
|
||||
nem Nutzer mit appendBefugnis auf die gegebene Relation an-
|
||||
gewendet werden.
|
||||
|
||||
BEISPIEL[E]
|
||||
/* Uebernehme den Mitarbeiter Mueller, Josef aus der */
|
||||
/* Relation "zugang" in die Relation "personal" */
|
||||
range of z is zugang
|
||||
append to personal(z.name, z.gehalt, einstdat=1987,
|
||||
beruf="Programmierer", gebdat = 1987-z.alter)
|
||||
where z.name = "Mueller, Josef"
|
||||
/* Fuege die Relation "zugang1" an "zugang" an */
|
||||
range of z1 is zugang1
|
||||
append to zugang(z1.all)
|
||||
|
||||
SIEHE AUCH
|
||||
copy(ql), copyr(mutos), permit(ql), ql(iql), retrieve(ql)
|
||||
|
||||
DIAGNOSE
|
||||
Bei Zuweisung eines numerischen Ausdruckes auf eine Zei-
|
||||
chenkettendomaene oder einer Zeichenkette auf eine numeri-
|
||||
sche Domaene werden Nachrichten ausgegeben.
|
||||
|
||||
FEHLERQUELLEN
|
||||
Doppelte Tupel, die an eine Relation vom Speicherungstyp
|
||||
"paged heap" (Schluessellos, unstrukturiert) angefuegt wer-
|
||||
den sollen, werden nicht abgewiesen.
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
COPY(QL) DABA16 COPY(QL)
|
||||
|
||||
NAME
|
||||
copy - Kopieren von Daten zwischen Relation und MUTOS-File
|
||||
|
||||
UEBERSICHT
|
||||
copy relname (domname = format {, domname = format })
|
||||
|
||||
direction "filename"
|
||||
|
||||
BESCHREIBUNG
|
||||
Copy uebertraegt Daten zwischen DABA-Relationen und einem
|
||||
Standard-MUTOS-File. Relname ist der Name einer bestehenden
|
||||
Relation. Im allgemeinen identifiziert domname eine Domaene
|
||||
in der Relation relname. Format bestimmt das Format, das im
|
||||
MUTOS-File eine Domaene besitzen soll, die mit der spezifi-
|
||||
zierten Domaene der Relation korrespondiert. Direction
|
||||
(Richtung) kann entweder into (in) oder from (aus) sein.
|
||||
Filename ist der vollstaendige Pfadname eines Files.
|
||||
|
||||
|
||||
Erlaubte Formate bei copy sind :
|
||||
|
||||
|
||||
|
||||
i1,i2,i4 - Der Datenwert im MUTOS-File ist als Festkommazahl
|
||||
(Integer) der Laenge 1, 2 oder 4 Byte gespeichert.
|
||||
|
||||
f4,f8 - Der Datenwert im MUTOS-File ist eine Gleitkommazahl
|
||||
(entweder einfacher oder doppelter Genauigkeit).
|
||||
|
||||
c1,c2,...,c255 - Der Datenwert ist als Zeichenkette (String)
|
||||
fester Laenge gespeichert.
|
||||
|
||||
c0 - Zeichenkette variabler Laenge (begrenzt durch
|
||||
Begrenzerzeichen).
|
||||
|
||||
d0,d1,...,d255 - Pseudo(Dummy)-Domaene
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
/* Kopieren von Daten in die Relation "personal"*/
|
||||
copy personal (name=c20,gehalt=f4,gebdat=i2,xxx=d1)
|
||||
from "/mnt/peter/pers1"
|
||||
|
||||
/* Kopieren der Namen und Gehaelter in ein File*/
|
||||
copy personal (name=c0,comma=d1,gehalt=c0,nl=d1)
|
||||
into "/mnt/klaus/gehalt"
|
||||
|
||||
|
||||
/* Gesamtkopie der Relation "personal" in ein File*/
|
||||
copy personal ()
|
||||
into "/mnt/kop/personal"
|
||||
|
||||
/* Rueckspeichern der Gesamtkopie aus einem File*/
|
||||
copy personal ()
|
||||
from "/mnt/kop/personal"
|
||||
|
||||
SIEHE AUCH
|
||||
append(ql), create(ql), creater(mutos), integrity(ql),
|
||||
permit(ql), ql(iql), view(ql), iql(mutos)
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
COPYDB(MUTOS) DABA16 COPYDB(MUTOS)
|
||||
|
||||
NAME
|
||||
copydb - Kopieren einer Datenbank
|
||||
|
||||
UEBERSICHT
|
||||
copydb [ -uname ] dbname directory { relname }
|
||||
|
||||
BESCHREIBUNG
|
||||
Copydb erstellt im spezifizierten Directory, das als voll-
|
||||
staendiger Pfadname anzugeben ist (/...), zwei DABA-
|
||||
Kommando-Files :
|
||||
copy.out
|
||||
und
|
||||
copy.in.
|
||||
|
||||
Das spezifizierte Directory darf NICHT das Datenbank-
|
||||
Directory sein, da die Namen der Relationen und der Files
|
||||
dann uebereinstimmen wuerden.
|
||||
Das -u Flag (-uname-Spezifikation, kein Leerzeichen dazwi-
|
||||
schen!) kann benutzt werden, damit der DABA-
|
||||
Systemverantwortliche oder der DBA fuer einen anderen Nutzer
|
||||
(mit dessen Nutzeridentifikator) ein copydb ausfuehren kann.
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
chdir /mnt/mein_dir
|
||||
copydb db /mnt/mein_dir/backup
|
||||
iql db <backup/copy.out
|
||||
tar c1 backup
|
||||
rm -r backup
|
||||
tar x1
|
||||
iql db <backup/copy.in
|
||||
|
||||
SIEHE AUCH
|
||||
copy(ql), create(ql), creater(mutos), define(ql), index(ql),
|
||||
indexr(mutos), integrity(ql), modify(ql), modifyr(mutos),
|
||||
permit(ql), ql(mutos), view(ql)
|
||||
|
||||
FEHLERQUELLEN
|
||||
Copydb kann nicht beruecksichtigen, dass eine Relation mit
|
||||
einem Fuellfaktor fillfactor oder mit minpages spezifiziert
|
||||
wurde.
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
COPYR(MUTOS) DABA16 COPYR(MUTOS)
|
||||
|
||||
NAME
|
||||
copyr - Kopieren von Daten zwischen Relation und MUTOS-File
|
||||
|
||||
UEBERSICHT
|
||||
copyr [ flags ] dbname relname { domname format })
|
||||
into/from file
|
||||
|
||||
BESCHREIBUNG
|
||||
Die Aussagen zu copy(ql) gelten auch fuer copyr(mutos).
|
||||
|
||||
Sie sind jedoch um Folgendes zu ergaenzen:
|
||||
|
||||
File:
|
||||
|
||||
Statt des MUTOS-Filenamens kann auch das Nummernzeichen "#"
|
||||
fuer die Standardeingabe bei copyr ... from "#" oder die
|
||||
Standardausgabe copyr ... into "#" angegeben werden.
|
||||
|
||||
Es brauchen keine vollstaendigen Pfadnamen spezifiziert wer-
|
||||
den. Es ist zu beachten, dass Grossbuchstaben in den File-
|
||||
name in Kleinbuchstaben konvertiert werden!
|
||||
|
||||
Flags:
|
||||
|
||||
-uname erlaubt es, sich als Nutzer mit dem Login-Namen aus-
|
||||
zugeben; siehe iql(mutos).
|
||||
|
||||
+/-w Warten oder kein Warten auf die Nutzbarkeit der Daten-
|
||||
bank dbname (iql(mutos)).
|
||||
|
||||
BEISPIEL[E]
|
||||
copyr dt erfind \
|
||||
x0 "d0'" \
|
||||
erfindung "c0'" \
|
||||
x1 d2 \
|
||||
erfinder "c0'" \
|
||||
x2 "d0'" \
|
||||
jahr "c0'" \
|
||||
x3 d2 \
|
||||
land "c0'" \
|
||||
x4 "d0;" \
|
||||
x5 d0nl \
|
||||
from erfind/erfindungen
|
||||
|
|
@ -0,0 +1,127 @@
|
|||
CREATDB(MUTOS) DABA16 CREATDB(MUTOS)
|
||||
|
||||
NAME
|
||||
creatdb - Erstellen einer Datenbank
|
||||
|
||||
UEBERSICHT
|
||||
creatdb [ -uname ] [ -e ] [ -m ] [ -/+c ]
|
||||
[ -/+q ] [ -1 | -2 | -4 | -8 ] dbname
|
||||
|
||||
|
||||
BESCHREIBUNG
|
||||
Creatdb erstellt eine neue DABA-Datenbank oder modifiziert
|
||||
den Status einer existierenden.
|
||||
|
||||
Das Flag -u mit dem unmittelbar folgenden Login-Namen
|
||||
name gestattet es, sich als Nutzer mit dem Login-Namen name
|
||||
auszugeben.
|
||||
Das -c Flag schaltet die sogenannte "Gleichzeitigkeitssteue-
|
||||
rung" aus (Standard : "ein").
|
||||
Das +q Flag schaltet die sogenannte "Anfragenmodifikation"
|
||||
ein (Standard : "ein").
|
||||
|
||||
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
creatdb demo
|
||||
creatdb -upeter +q peters_db
|
||||
creatdb -e +q +c -upeter peters_db
|
||||
|
||||
creatdb -upeter -c peters_db
|
||||
creatdb -e +c peters_db
|
||||
|
||||
Montiertes Filesystem im DABA-DB-Pfad .../data/base
|
||||
|
||||
Soll eine Datenbank z.B. db_in_mount auf einem separaten
|
||||
Filesystem, das im DABA-Datenbankpfad .../data/base mit
|
||||
mount montiert wird, erstellt werden, ist das Folgendes zu
|
||||
tun.
|
||||
|
||||
Der DABA-Systemverantwortliche daba (login: daba) richtet
|
||||
das Datenbank-Directory ein und setzt den richtigen File-
|
||||
Modus:
|
||||
|
||||
mkdir .../data/base/db_in_mount
|
||||
chmod 777 .../data/base/db_in_mount
|
||||
|
||||
|
||||
|
||||
|
||||
Der MUTOS-Systemverantwortliche root (login: root) montiert
|
||||
im Directory
|
||||
|
||||
.../data/base/db_in_mount das Filesystem,
|
||||
auf dem die Datenbank residieren soll.
|
||||
|
||||
Der DBA der Datenbank fuehrt folgendes Kommando aus:
|
||||
|
||||
creatdb -m db_in_mount
|
||||
|
||||
Vor jeder Benutzung der Datenbank db_in_mount ist dafuer zu
|
||||
sorgen, dass das Filesystem montiert worden ist.
|
||||
|
||||
Das Anlegen von ausgelagerten Datenbanken
|
||||
|
||||
Als ausgelagerte Datenbanken werden solche bezeichnet, die
|
||||
nicht, wie ueblich, im Datenbankpfad .../data/base angelegt
|
||||
werden. Das kann sinnvoll sein, wenn z.B. mehrere Datenban-
|
||||
ken als ein Komplex auf einem separaten Datentraegern an-
|
||||
gelegt werden muessen.
|
||||
|
||||
Ausgelagerte Datenbanken koennen ausschliesslich vom DABA-
|
||||
Systemverantwortlichen daba im Auftrage eines anderen Nut-
|
||||
zers angelegt werden!
|
||||
|
||||
Wenn die Datenbank db_aus_mount im Directory
|
||||
/mount/peters_dbs existieren, der Nutzer peter der DBA die-
|
||||
ser Datenbank sein wird, die mit Anfragenmodifikation und
|
||||
Gleichzeitigkeitssteuerung arbeiten soll, ist das Folgende
|
||||
zu tun:
|
||||
|
||||
Der DABA-Systemverantwortliche daba (Login: daba) gibt die
|
||||
folgenden Kommandos:
|
||||
|
||||
login: daba
|
||||
passwd:
|
||||
|
||||
cd data/base
|
||||
creatdb -upeter +c +q db_aus_mount
|
||||
|
||||
In "/mount/peters_dbs"
|
||||
koennte ein Datentaeger
|
||||
montiert werden.
|
||||
|
||||
mkdir /mount/peters_dbs/dbs_a
|
||||
|
||||
chmod 700 /mount/peters_dbs/dbs_a
|
||||
|
||||
Der File-Name "dbs_a"
|
||||
ist ein beliebiger.
|
||||
In "/mount/peters_dbs/dbs_a"
|
||||
koennte ein Datentraeger montiert werden.
|
||||
|
||||
mkdir /mount/peters_dbs/dbs_a/db_a
|
||||
|
||||
chmod 777 /mount/peters_dbs/dbs_a/db_a
|
||||
|
||||
Der Name "db_a" ist ein beliebiger.
|
||||
Hier eine Datentraeger zu montieren
|
||||
ist nicht sinnvoll.
|
||||
|
||||
mv db_aus_mount/* /mount/peters_dbs/dbs_a/db_a
|
||||
|
||||
rmdir db_aus_mount
|
||||
|
||||
echo /mount/peters_dbs/dbs_a/db_a >db_aus_mount
|
||||
|
||||
chmod 600 db_aus_mount
|
||||
|
||||
|
||||
FILES
|
||||
.../sys/etc/dbtmplt6.3
|
||||
.../data/base/*
|
||||
|
||||
|
||||
SIEHE AUCH
|
||||
destroydb(mutos), permit(ql), users(files)
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
CREATE(QL) DABA16 CREATE(QL)
|
||||
|
||||
NAME
|
||||
create - Erstellen einer neuen Relation
|
||||
|
||||
UEBERSICHT
|
||||
create relname (domname1 = format {, domname2 = format })
|
||||
|
||||
BESCHREIBUNG
|
||||
Create fuegt in die Datenbank eine neue Relation ein. Der
|
||||
Anwender der Anweisung wird Eigentuemer der Relation, die
|
||||
fuer sieben Tage reserviert wird. Der Name der Relation ist
|
||||
relname , und die Domaenen werden domname1 , domname2 usw.
|
||||
benannt. Die Domaenen werden mit einem Typ erstellt, der
|
||||
durch format, spezifiziert wird. Gueltige Formate sind in
|
||||
ql(iql) beschrieben.
|
||||
|
||||
Die Relation wird mit dem Speicherungstyp "paged heap" ohne
|
||||
Daten erzeugt.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
/* Erstellen der Relation "personal" mit den Domaenen */
|
||||
/* name, gehalt und gebdat */
|
||||
create personal (name=c20,gehalt= f4, gebdat=i2)
|
||||
|
||||
SIEHE AUCH
|
||||
append(ql), copy(ql), copyr(mutos), creater(mutos), de-
|
||||
stroy(ql), modify(ql), modifyr(mutos), save(ql)
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
CREATER(MUTOS) DABA16 CREATER(MUTOS)
|
||||
|
||||
NAME
|
||||
creater - Erstellen einer neuen Relation
|
||||
|
||||
UEBERSICHT
|
||||
creater [ flags ] dbname relname { domname format }
|
||||
|
||||
BESCHREIBUNG
|
||||
Die Aussagen zu create(ql) gelten auch fuer creater(mutos).
|
||||
|
||||
Sie sind jedoch sie um Folgendes zu ergaenzen:
|
||||
|
||||
Flags:
|
||||
|
||||
-uname erlaubt es, sich als Nutzer mit dem Login-Namen
|
||||
auszugeben; siehe iql(mutos).
|
||||
|
||||
+/-w Warten oder kein Warten auf die Nutzbarkeit der
|
||||
Datenbank dbname siehe iql(mutos).
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
DAYFILE(FILES) DABA16 DAYFILE(FILES)
|
||||
|
||||
NAME
|
||||
.../sys/etc/dayfile6.3 - DABA-Login-Nachrichten
|
||||
|
||||
BESCHREIBUNG
|
||||
Der Inhalt des Files "dayfile" stellt Informationen von all-
|
||||
gemeinem Interesse innerhalb der DABA-Nutzung dar und aeh-
|
||||
nelt dem /etc/motd File des MUTOS. Das File besitzt kein
|
||||
bestimmtes Format und wird zum Login-Zeitpunkt durch den
|
||||
DABA-Terminal-Monitor in die Standardausgabe kopiert, wenn
|
||||
beim daba Aufruf die -s oder -d Flags nicht gesetzt wurden.
|
||||
Das Vorhandensein des "dayfile" ist nicht erforderlich, so
|
||||
dass seine Abwesenheit oder auch eine Nicht-Lesbarkeit zu
|
||||
keiner Fehlernachricht fuehrt.
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
DEFINE(QL) DABA16 DEFINE(QL)
|
||||
|
||||
NAME
|
||||
define - Definieren Sicht, Befugnisse oder Integritaetsbe-
|
||||
dingungen
|
||||
|
||||
UEBERSICHT
|
||||
define view name (target_list) [ where qual ]
|
||||
|
||||
define permit oplist on tuple_variable [ (attlist) ] to
|
||||
name [ at term ] [ from time to time ]
|
||||
[ on day to day ] [ where qual ]
|
||||
|
||||
define integrity on tuple_variable is qual
|
||||
|
||||
BESCHREIBUNG
|
||||
Define erstellt Eintraege fuer Sichten, Befugnisse und In-
|
||||
tegritaetsbedingungen, wenn die Anfragemodifikations-
|
||||
Unterstuetzung (QRYMOD, Query Modification) eingeschaltet
|
||||
wurde (Sollte sie stets!).
|
||||
|
||||
Die vollstaendigen Beschreibungen sind bei den im Abschnitt
|
||||
SIEHE AUCH aufgefuehrten Anweisungen zu finden.
|
||||
|
||||
|
||||
SIEHE AUCH
|
||||
integrity(ql), permit(ql), view(ql)
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
DESTROY(QL) DABA16 DESTROY(QL)
|
||||
|
||||
NAME
|
||||
destroy - Zerstoeren einer bestehenden Relation
|
||||
|
||||
UEBERSICHT
|
||||
destroy relname { , relname }
|
||||
|
||||
destroy [ permit | integrity ] relname
|
||||
[ integer { , integer } | all ]
|
||||
|
||||
BESCHREIBUNG
|
||||
Destroy entfernt Relationen (auch virtuelle Relationen oder
|
||||
Sichten) aus der Datenbank bzw. entfernt Einschraenkungen
|
||||
(Constraints, Integritaetsbedingungen) oder Befugnisse (Per-
|
||||
missions) auf eine Relation. Nur der Relationseigentuemer
|
||||
kann eine Relation oder ihre Befugnisse und Integritaets-
|
||||
Einschraenkungen zerstoeren. Durch delete oder modify An-
|
||||
weisungen kann die Relation in eine leere Relation (tupel-
|
||||
los) ueberfuehrt aber nicht zerstoert werden.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
/* Zerstoeren der Relation "personal" */
|
||||
destroy personal
|
||||
/* Zerstoeren der Relationen "personal" und "teile" */
|
||||
destroy personal, teile
|
||||
|
||||
/* Zerstoeren einiger Befugnisse auf die Relation "teile" */
|
||||
/* und aller Integritaets-Einschraenkungen auf "personal"*/
|
||||
destroy permit teile 0, 4, 5
|
||||
destroy integrity personal all
|
||||
|
||||
SIEHE AUCH
|
||||
create(ql), creater(mutos), delete(ql), destroyr(mutos),
|
||||
help(ql), helpr(mutos), index(ql), integrity(ql),
|
||||
modify(ql), modifyr(mutos), permit(ql), view(ql)
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
DESTROYDB(MUTOS) DABA16 DESTROYDB(MUTOS)
|
||||
|
||||
NAME
|
||||
destroydb - Zerstoeren einer bestehenden Datenbank
|
||||
|
||||
UEBERSICHT
|
||||
destroydb [ -s ] [ -m ] dbname
|
||||
|
||||
BESCHREIBUNG
|
||||
Destroydb zerstoert alle Verweise auf eine existierende Da-
|
||||
tenbank. Das Directory der Datenbank und alle Files in die-
|
||||
sem Directory werden entfernt.
|
||||
|
||||
Um dieses Kommando auszufuehren, muss der aktuelle Nutzer
|
||||
entweder der Datenbankadministrator (DBA) der spezifizierten
|
||||
Datenbank oder der DABA-Systemverantwortliche (bei spezifi-
|
||||
ziertem -s Flag) sein.
|
||||
|
||||
Das -m Flag veranlasst, dass destroydb das MUTOS-Directory
|
||||
nicht entfernt. Das ist bedeutungsvoll, wenn das Directory
|
||||
ein separat montiertes (mounted) MUTOS-File-System dar-
|
||||
stellt.
|
||||
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
destroydb demo
|
||||
destroydb -s peters_db
|
||||
|
||||
FILES
|
||||
.../data/base/*
|
||||
|
||||
SIEHE AUCH
|
||||
creatdb(mutos)
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
DESTROYR(MUTOS) DABA16 DESTROYR(MUTOS)
|
||||
|
||||
NAME
|
||||
destroyr - Zerstoeren einer bestehenden Relation
|
||||
|
||||
UEBERSICHT
|
||||
destroyr [ flags ] dbname { [ permit | integrity ] relname [
|
||||
integer { , integer } | all ] }
|
||||
|
||||
BESCHREIBUNG
|
||||
Die Aussagen zu destroy(ql) gelten auch fuer
|
||||
destroyr(mutos).
|
||||
|
||||
Sie sind jedoch um Folgendes zu ergaenzen:
|
||||
|
||||
Flags:
|
||||
|
||||
-uname erlaubt es, sich als Nutzer mit dem Login-Namen
|
||||
auszugeben; siehe iql(mutos).
|
||||
|
||||
+/-w Warten oder kein Warten auf die Nutzbarkeit der
|
||||
Datenbank dbname; siehe iql(mutos).
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
ERROR(FILES) DABA16 ERROR(FILES)
|
||||
|
||||
NAME
|
||||
.../sys/etc/error6.3_? - Files mit DABA-Fehlernachrichten
|
||||
|
||||
BESCHREIBUNG
|
||||
Diese Files enthalten die DABA-Fehlernachrichten. Es exi-
|
||||
stiert jeweils ein File fuer tausend moegliche Nachrichten.
|
||||
So befindet sich z.B. die Fehler-Nummer 2313 im File "er-
|
||||
ror6.3_2".
|
||||
|
||||
Jedes File besteht aus einer Folge von Fehlernachrichten mit
|
||||
den zugehoerigen Fehlernummern. Wenn ein Fehler auftritt,
|
||||
wird das entsprechende Fehler-File nach der Fehlernummer
|
||||
durchsucht. Wenn sie gefunden wird, erfolgt das Ausgeben
|
||||
der Nachricht. Wenn nicht, wird der erste Parameter aus-
|
||||
gegeben.
|
||||
|
||||
Jede Nachricht hat das Format
|
||||
|
||||
Fehlernummer <TAB> Nachricht Tilde-Zeichen.
|
||||
|
||||
Nachrichten werden durch das Tilde-Zeichen ("~") abgeschlos-
|
||||
sen.
|
||||
Die Nachricht wird vor der Ausgabe durchsucht. Wenn die
|
||||
Zeichenfolge %n auftritt, ( n ist eine Ziffer von 0 bis 9
|
||||
ist), wird der Parameter n substituiert, wobei %0 der erste
|
||||
Parameter ist.
|
||||
|
||||
Die Parameter koennen in beliebiger Folge angeordnet sein.
|
||||
Beispielsweise kann eine Fehlernachricht auf den Parameter%2
|
||||
vor dem Parameter %0 verweisen.
|
||||
|
||||
BEISPIEL[E]
|
||||
1003 line %0, bad database name %1~
|
||||
1005 In the purge of %1, a bad %0 caused execution to halt~
|
||||
1006 No process, try again.~
|
||||
|
|
@ -0,0 +1,54 @@
|
|||
HELP(QL) DABA16 HELP(QL)
|
||||
|
||||
NAME
|
||||
help - Anzeigen von Nutzungs- oder Datenbank-Informationen
|
||||
|
||||
UEBERSICHT
|
||||
help [ relname ] [ "[komponentenname]" ]
|
||||
{, relname}{, "[komponentenname]"}
|
||||
|
||||
help view relname {, relname}
|
||||
|
||||
help permit relname {, relname}
|
||||
|
||||
help integrity relname {, relname}
|
||||
|
||||
BESCHREIBUNG
|
||||
Help kann verwendet werden, um Komponentenbeschreibungen des
|
||||
vorliegenden Handbuches, Informationen ueber den Inhalt der
|
||||
benutzten Datenbank, Informationen ueber spezielle Relatio-
|
||||
nen der Datenbank, Sicht(View)-Definitionen oder
|
||||
Befugnis(Permit)- und Integritaets(Integrity)-
|
||||
Einschraenkungen anzuzeigen. Es gibt folgende gueltige For-
|
||||
men :
|
||||
|
||||
help "komponentenname " - Erzeugt eine Kopie der speziellen
|
||||
Komponentenbeschreibung des Handbuches und gibt sie auf
|
||||
dem Standardausgabe-Geraet aus
|
||||
help - Gibt Informationen ueber alle eigenen (fuer die Sie
|
||||
Eigentuemer sind) Relationen der benutzten Datenbank.
|
||||
help relname {, relname} - Gibt Informationen ueber die spe-
|
||||
zifizierten Relationen fuer die Sie mindestens unein-
|
||||
geschraenkte retrieve Befugnisse besitzen.
|
||||
help "" - Anzeigen der Komponentenuebersicht
|
||||
help view relname {, relname} - Anzeigen von Definitionen
|
||||
spezifizierter Sichten.
|
||||
help permit relname {, relname} - Anzeigen von Befugnissen
|
||||
fuer spezifizierte Relationen.
|
||||
help integrity relname {, relname} - Anzeigen von
|
||||
Interitaets-Einschraenkungen spezifizierter Relationen
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
help
|
||||
help "help" /* Druckt diese Seite des Handbuches */
|
||||
help "ql"
|
||||
help personal
|
||||
help personal, teile, "help", lieferung
|
||||
help view pers_view
|
||||
help permit teile, personal
|
||||
help integrity teile, personal
|
||||
|
||||
SIEHE AUCH
|
||||
destroy(ql), destroyr(mutos), helpr(mutos), manr(mutos),
|
||||
refr(mutos)
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
HELPR(MUTOS) DABA16 HELPR(MUTOS)
|
||||
|
||||
NAME
|
||||
helpr - Anzeigen von Informationen ueber die Relationen der
|
||||
Datenbank
|
||||
|
||||
UEBERSICHT
|
||||
helpr [ flags ] dbname [ [ integrity | permit | view ]
|
||||
{relname} | all ]
|
||||
|
||||
BESCHREIBUNG
|
||||
Helpr informiert ueber Relationen analog der QL-Anweisung
|
||||
"help" (siehe help(ql)). Mit helpr koennen jedoch keine
|
||||
Komponentenbeschreibungen ausgelistet werden, dafuer gibt es
|
||||
die Kommandos manr und refr.
|
||||
|
||||
Akzeptierte Flags sind -u und +/-w (siehe (iql(mutos)).
|
||||
|
||||
Bei den Spezifikationen view, permit und integrity werden
|
||||
entsprechend die Sichtdefinitionen, die Berechtigungen und
|
||||
die Integritaetbedingungen fuer die Relationen angezeigt.
|
||||
|
||||
|
||||
|
||||
|
||||
Das Anzeigen der Relationen erfolgt im Abhaengigkeit vom
|
||||
Status des Nutzers.
|
||||
Das Kommondo helpr dbname all zeigt alle eigenen Relationen
|
||||
an.
|
||||
|
||||
SIEHE AUCH
|
||||
help(ql), manr(mutos), iql(mutos) refr(mutos)
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
INDEX(QL) DABA16 INDEX(QL)
|
||||
|
||||
NAME
|
||||
index - Erstellen eines Sekundaerindex ueber eine Relation
|
||||
|
||||
UEBERSICHT
|
||||
index on relname is indexname (domain1 { ,domain2 })
|
||||
|
||||
BESCHREIBUNG
|
||||
Index wird benutzt, um Sekundaerindizes auf existierenden
|
||||
Relationen zu erstellen und damit die Effizienz von retrie-
|
||||
ve, delete, replace und append zu erhoehen. Der Sekunda-
|
||||
erschluessel wird aus den Domaenen 1, 2, ... 6 in spezifi-
|
||||
zierter Reihenfolge gebildet. Nur der Relationseigentuemer
|
||||
ist befugt, Sekundaerindizes ueber einer Relation zu erstel-
|
||||
len.
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
/* Erstellen eines Sekundaerindex "x" ueber "personal" */
|
||||
index on personal is x(name,gehalt)
|
||||
|
||||
|
||||
|
||||
|
||||
SIEHE AUCH
|
||||
copy(ql), copyr(mutos), destroy(ql), indexr(mutos),
|
||||
modify(ql), modifyr(mutos)
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
INDEXR(MUTOS) DABA16 INDEXR(MUTOS)
|
||||
|
||||
NAME
|
||||
indexr - Erstellen eines Sekundaerindex ueber eine Relation
|
||||
|
||||
UEBERSICHT
|
||||
indexr [ flags ] dbname prim_rel index_rel { domname }
|
||||
|
||||
BESCHREIBUNG
|
||||
Die Aussagen zu index(ql) gelten auch fuer indexr(mutos).
|
||||
|
||||
Sie sind jedoch um Folgendes zu ergaenzen:
|
||||
|
||||
|
||||
Flags:
|
||||
|
||||
-uname erlaubt es, sich als Nutzer mit dem Login-Namen
|
||||
name auszugeben; siehe iql(mutos).
|
||||
|
||||
+/-w Warten oder kein Warten auf die Nutzbarkeit
|
||||
der Datenbank dbname (iql(mutos)).
|
||||
|
||||
-fillfactorn Ist die Spezifikation des Fuellfaktors n
|
||||
(Zahl).
|
||||
|
||||
-minpagesn Ist die Spezifikation der Mindestseitenanzahl n
|
||||
(Zahl).
|
||||
|
||||
-maxpagesn Ist die Spezifikation der maximalen Seitenanzahl
|
||||
n (Zahl).
|
||||
|
||||
-speicherungs_struktur Ist die Spezifikation der Speiche-
|
||||
rungsstruktur speicherungs_struktur (modify(ql)).
|
||||
|
||||
-tidp Ist die Spezifikation, dass eindeutige Schluesselein-
|
||||
traege durch das Anhaengen des Tupelidentifikators erzeugt
|
||||
werden. Damit werden auch fuer gleiche Indexwerte (z.B. ge-
|
||||
halt=1000) fuer jedes dieser Tupel Schluessel gebildet.
|
||||
Diese Massnahme fuehrt bei Aenderungen i.allg. zu einer Be-
|
||||
schleunigung.
|
||||
|
||||
SIEHE AUCH
|
||||
destroy(ql), destroyr(mutos), index(ql)
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
INTEGRITY(QL) DABA16 INTEGRITY(QL)
|
||||
|
||||
NAME
|
||||
integrity - Definieren von Integritaetsbedingungen
|
||||
|
||||
UEBERSICHT
|
||||
define integrity on tuple_variable is qual
|
||||
|
||||
BESCHREIBUNG
|
||||
Integrity fuegt eine Integritaetsbedingung fuer die durch
|
||||
tuple_variable spezifizierte Relation den Integritaetsbedin-
|
||||
gungen hinzu. Nachdem die Bedingung gespeichert wurde,
|
||||
muessen alle Aenderungen auf die Relation die Qualifikation
|
||||
qual erfuellen.
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
/* Sichern eines positiven Gehaltes */
|
||||
range of p is personal
|
||||
define integrity on p is p.gehalt > 0
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
SIEHE AUCH
|
||||
copy(ql), copyr(mutos), destroy(ql)
|
||||
|
|
@ -0,0 +1,122 @@
|
|||
IQL(MUTOS) DABA16 IQL(MUTOS)
|
||||
|
||||
NAME
|
||||
iql - Aufruf des interaktiven Ql-Interface des DBBS DABA16
|
||||
|
||||
UEBERSICHT
|
||||
iql [ flags ] dbname [ process_table ]
|
||||
|
||||
BESCHREIBUNG
|
||||
Das ist das MUTOS-Kommando, das verwendet wird, um DABA16
|
||||
aufzurufen. Dbname ist der Name einer existierenden Daten-
|
||||
bank.
|
||||
Die wahlweisen Flags haben folgende Bedeutung :
|
||||
+/- bedeutet, dass die Option x durch das Flag +x gesetzt
|
||||
und durch -x geloescht werden soll. Ein - allein bedeutet,
|
||||
dass mit -x die Funktion x eingeschaltet werden soll :
|
||||
|
||||
+/-U Erlaubt (erlaubt nicht) das direkte Veraendern der
|
||||
Systemrelationen und Sekundaerindizes. Fuer den
|
||||
Nutzer muss das 000004 Bit im Statusfeld des Files
|
||||
"users" (users(files)) gesetzt sein, damit dieses
|
||||
Flag akzeptiert wird. Diese Option wird aus-
|
||||
schliesslich fuer eine Fehlersuche im DBBS bereit-
|
||||
gestellt und ist fuer die normale Benutzung streng
|
||||
verboten.
|
||||
-uname Das -u Flag mit unmittelbar folgenden Namen name
|
||||
gestattet es sich als Nutzer mit dem Login-Namen
|
||||
auszugeben. Nur der DBA oder der DABA Systemver-
|
||||
antwortliche duerfen diese Option verwenden.
|
||||
-cN Setzt die minimale Spaltenbreite fuer die Anzeige
|
||||
von Character(Zeichen)-Domaenen auf N. Der Stan-
|
||||
dard ist 6.
|
||||
-ex setzt das Zeilenseparierungszeichen auf x Der
|
||||
Standard ist das Minuszeichen "-".
|
||||
-ilN Setzt die Ausgabebreite fuer Integer (Festkomma-
|
||||
zahl) auf N. l kann 1, 2 oder 4 fuer entsprechend
|
||||
i1, i2 bzw. i4 Integer sein. Der Standard ist
|
||||
fuer i1 und i2 gleich 6 und fuer i4 gleich 13.
|
||||
-flxM.N Setzt die Ausgabebreite fuer Gleitkommazahlen
|
||||
(Floating point) auf M Zeichen mit N Dezimalstel-
|
||||
len nach dem Komma. l kann 4 oder 8 fuer f4 bzw.
|
||||
f8 sein. Das x kann sein e, E, f, F, g, G, n oder
|
||||
N, um Ausgabeformate zu spezifizieren. E ist die
|
||||
Exponentialform, F ist die Gleitkammadarstellung.
|
||||
G und N sind identisch mit F ausser, wenn die kon-
|
||||
vertierte Zahl zu gross ist, um in das Feld zu
|
||||
passen. Dann wird in der Exponentialform E aus-
|
||||
gegeben. G garantiert die Ausrichtung des Dezi-
|
||||
malpunktes, N nicht. Das Standardformat fuer bei-
|
||||
de ist n10.3.
|
||||
-vX Setzt das Zeichen fuer die Spaltenseparierung
|
||||
(Trennung) zum Anzeigen am Terminal (beim Wieder-
|
||||
auffinden) und fuer die Ausgabe mit der print-
|
||||
Anweisung auf X. Standard ist der senkrechte
|
||||
Strich "|".
|
||||
-rM Setzt die Speicherungsstruktur bei der retrieve
|
||||
Anweisung (retrieve into) auf M. M kann sein:
|
||||
|
||||
isam, cisam, hash, chash, heap, cheap, heapsort
|
||||
oder cheapsort,
|
||||
|
||||
fuer ISAM, komprimiertes (compressed) ISAM, HASH-
|
||||
Relation, komprimierte HASH-Relation, HEAP, kom-
|
||||
primiertes HEAP, sortiertes HEAP, oder komprimier-
|
||||
tes und sortiertes HEAP. Standard ist "cheap-
|
||||
sort".
|
||||
-nM Setzt die Speicherungsstruktur fuer die index An-
|
||||
weisung auf M. M kann die gleichen Werte wie beim
|
||||
obigen -r Flag annehmen. Standard ist "isam".
|
||||
+/-a Setzt die Autoloeschfunktion Option (automatische
|
||||
Loeschung des Monitorpuffers) des Terminal-
|
||||
Monitors ein (aus). Standard ist "ein".
|
||||
+/-b Setzt die Arbeitsweise Stapelaenderung (batch up-
|
||||
date) ein (aus). Fuer den Nutzer muss das 000002
|
||||
Bit des Statusfeldes im File "users"
|
||||
(users(files)) gesetzt sein, um diese Option aus-
|
||||
zuschalten. Das Flag ist normalerweise gesetzt.
|
||||
Wenn es ausgeschaltet ist, werden die Anfragen
|
||||
zwar etwas schneller verarbeitet, aber es ist kei-
|
||||
ne Wiederherstellung (recovery) nach einem Syste-
|
||||
mabsturz ausfuehrbar. Anfragen, die einen Sekun-
|
||||
daerindex veraendern, setzen automatisch dieses
|
||||
Flag (nur fuer diese Anfrage) ein.
|
||||
+/-d Anzeige (keine Anzeige) des Inhaltes des Files
|
||||
"dayfile" (dayfile(files)) (normalerweise ge-
|
||||
setzt).
|
||||
+/-s Anzeige (keine Anzeige, "schweigendes Arbeiten")
|
||||
irgendwelcher Monitor-Nachrichten, einschliesslich
|
||||
Eingabeanforderungen (Prompts). Diese Flag ist
|
||||
normalerweise gesetzt. Wenn ausgeschaltet, ist
|
||||
auch das -d Flag ausgeschaltet.
|
||||
|
||||
Process_table ist der Pfadname eines DABA File, das fuer
|
||||
eine spezielle DABA Laufzeitkonfiguration verwendet werden
|
||||
kann. Diese Moeglichkeit ist nur fuer die Systempflege vor-
|
||||
gesehen und ihre unbesonnene Anwendung durch den normalen
|
||||
Anwender ist streng untersagt.
|
||||
Der eine Prozesstabelle verwendende Nutzer muss das 000100
|
||||
Bit im Statusfeld des users-File gesetzt haben. Der die "="
|
||||
-Form verwendende Nutzer muss das 000200 Bit gesetzt haben.
|
||||
Die "=" Form bedeutet, dass dem File process_table der Pfad-
|
||||
name .../sys/etc/ vorangestellt wird.
|
||||
|
||||
Bemerkung : Es ist moeglich, den Terminal-Monitor als
|
||||
Stapelverarbeitungs-Interface durch die Verwendung der Ope-
|
||||
ratoren "<", ">" und "|" der MUTOS-Shell zu benutzen.
|
||||
|
||||
BEISPIEL[E]
|
||||
iql demo
|
||||
iql -d demo
|
||||
iql -s demo < batchfile
|
||||
iql -f4g12.2 -i13 +b -rhash demo
|
||||
|
||||
FILES
|
||||
.../sys/etc/users
|
||||
.../sys/etc/proctab6.3
|
||||
.../sys/etc/dayfile6.3
|
||||
.../sys/etc/startup
|
||||
.../data/base
|
||||
|
||||
SIEHE AUCH
|
||||
monitor(iql)
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
MANR(MUTOS) DABA16 MANR(MUTOS)
|
||||
|
||||
NAME
|
||||
manr - Anzeigen der Komponentenbeschreibungen
|
||||
|
||||
UEBERSICHT
|
||||
manr {komponentenname}
|
||||
|
||||
BESCHREIBUNG
|
||||
Manr zeigt - anlog \HELP - ohne die Angabe von Parametern
|
||||
eine Uebersicht ueber die zur Verfuegung stehenden Komponen-
|
||||
tenbeschreibungen.
|
||||
Es werden die Anweisungen und Kommandos der Handbuchteile
|
||||
mutos und ql sowie Beschreibungen zu ausgewaehlten Files in
|
||||
.../sys/etc angezeigt.
|
||||
Bei der Angabe von Namen der Komponentenbeschreibungen wird
|
||||
- analog \HELP - eine ausfuehrliche Dokumentation der ent-
|
||||
sprechenden Anweisung, des entsprechenden Kommandos oder der
|
||||
Files angezeigt.
|
||||
|
||||
BEISPIEL
|
||||
manr printr
|
||||
zeigt die Dokumentation des Kommandos "printr(mutos)".
|
||||
|
||||
|
||||
SIEHE AUCH
|
||||
help(ql),helpr(mutos), refr(mutos)
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
MODIFY(QL) DABA16 MODIFY(QL)
|
||||
|
||||
NAME
|
||||
modify - Modifizieren der Speicherungsstruktur einer Rela-
|
||||
tion
|
||||
|
||||
UEBERSICHT
|
||||
modify relname [ to storage_structure [ on key1
|
||||
[ : sortorder ] { , key_n [ : sortorder ] } ]
|
||||
[ where [ fillfactor = n ]
|
||||
[ , minpages = n ] [ , maxpages = n ] ] ]
|
||||
|
||||
BESCHREIBUNG
|
||||
Relname wird in die spezifizierte Speicherungsstruktur modi-
|
||||
fiziert. Nur der Relationseigentuemer darf die Relation mo-
|
||||
difizieren.
|
||||
|
||||
Folgende Speicherungsstrukturen (storage_structure) sind mo-
|
||||
eglich :
|
||||
|
||||
isam - index-sequentielle Speicherungsstruktur
|
||||
cisam - isam, komprimiert
|
||||
hash - Random hash Speicherungsstruktur
|
||||
chash - hash, komprimiert
|
||||
heap - schluessellos unstrukturiert
|
||||
cheap - heap, komprimiert
|
||||
heapsort - heap sortiert, doppelte Tupel entfernt
|
||||
cheapsort - heapsort, komprimiert
|
||||
truncated - heap, alle Tupel geloescht (tupellos)
|
||||
same - Reorganisation
|
||||
|
||||
Die Strukturen "heapsort", "cheapsort", "truncated" und "sa-
|
||||
me" sind nur temporaere Zustaende und im eigentlichen Sinne
|
||||
keine Speicherungsstrukturen.
|
||||
|
||||
|
||||
Wenn eine Relation in heapsort oder cheapsort modifiziert
|
||||
werden soll, kann die Sortierrichtung sortorder als ascen-
|
||||
ding (aufsteigend) oder descending (absteigend) spezifiziert
|
||||
werden.
|
||||
|
||||
|
||||
Fillfactor spezifiziert den prozentualen Fuellfaktor (von
|
||||
1-100) jeder primaeren Datenseite, die (unter idealen Bedin-
|
||||
gungen) mit Tupel gefuellt werden soll.
|
||||
|
||||
|
||||
Minpages spezifiziert die minimale Anzahl von Primaerseiten
|
||||
fuer hash- oder chash-Relationen. Maxpages ist die maximale
|
||||
Anzahl von Primaerseiten, die eine hash- oder chash-Relation
|
||||
besitzen soll.
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
/* Modifizieren der Relation "personal" in eine
|
||||
index-sequentielle Speicherungsstruktur
|
||||
mit "name" als Schluesseldomaene/*
|
||||
|
||||
modify personal to isam on name
|
||||
|
||||
/* Wenn "name" die erste Domaene der Relation
|
||||
"personal" ist, wird das gleiche
|
||||
Resultat erreicht durch : */
|
||||
|
||||
modify personal to isam
|
||||
|
||||
/* Die gleiche Modifikation aber mit einer
|
||||
geforderten Belegung der Primaerseiten
|
||||
von 60% */
|
||||
|
||||
modify personal to isam on name where fillfactor = 60
|
||||
|
||||
|
||||
|
||||
|
||||
/* Modifizieren der Relation "lieferung" in eine
|
||||
hash Speicherungsstruktur mit "num"
|
||||
und "menge" als Schluesseldomaenen */
|
||||
|
||||
modify lieferung to chash on num, menge
|
||||
|
||||
/* Die gleiche Modifikation aber mit einem
|
||||
gewuenschten Belegungsgrad der
|
||||
Primaerseiten von 75%, einem Minimum von 7
|
||||
und einem Maximum von 43 Primaerseiten */
|
||||
|
||||
modify lieferung to chash on num, menge
|
||||
where fillfactor = 75, minpages = 7,
|
||||
maxpages = 43
|
||||
|
||||
/* Noch einmal die gleiche Modifikation aber mit
|
||||
einem Minimum von 16 geforderten
|
||||
Primaerseiten */
|
||||
|
||||
modify lieferung to chash on num, menge
|
||||
where minpages = 16
|
||||
|
||||
|
||||
|
||||
|
||||
/* Modifizieren der Relation "teile" in eine
|
||||
heap Speicherungsstruktur */
|
||||
|
||||
modify teile to heap
|
||||
|
||||
/* Modifizieren der Relation "teile" in heap aber
|
||||
sortieren der Domaene "tnum" und dem
|
||||
Entfernen doppelter Tupel */
|
||||
|
||||
modify teile to heapsort on tnum
|
||||
|
||||
/* Modifizieren der Relation "personal" in
|
||||
aufsteigender Sortierfolge nach
|
||||
"gebdat" (Geburtsjahr) und absteigender
|
||||
Sortierfolge nach "gehalt" sowie dem
|
||||
Entfernen doppelter Tupel */
|
||||
|
||||
modify personal to heapsort on gebdat, gehalt:descending
|
||||
|
||||
SIEHE AUCH
|
||||
modifyr(mutos), sysmod(mutos)
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
MODIFYR(MUTOS) DABA16 MODIFYR(MUTOS)
|
||||
|
||||
NAME
|
||||
modifyr - Modifizieren der Speicherungsstruktur einer Rela-
|
||||
tion
|
||||
|
||||
UEBERSICHT
|
||||
modifyr [ flags ] dbname relname [ storage_strukture
|
||||
{ domname [ :sortorder ] } ]
|
||||
|
||||
BESCHREIBUNG
|
||||
Die Aussagen zu modify(ql) gelten auch fuer modifyr(mutos).
|
||||
Werden nur der Datenbankname und der Relationsname spezifi-
|
||||
ziert, entspricht das der Spezifikation "same" (Reorganisa-
|
||||
tion).
|
||||
|
||||
Bei einer Spezifikation der Sortierrichtung ist unmittelbar
|
||||
nach dem Domaenennamen domname ein Doppelpunkt und unmittel-
|
||||
bar danach sortorder anzugeben.
|
||||
|
||||
Die Spezifikationen sind jedoch um Folgendes zu ergaenzen:
|
||||
|
||||
|
||||
Flags:
|
||||
|
||||
-uname erlaubt es, sich als Nutzer mit dem Login-Namen
|
||||
name auszugeben; siehe iql(mutos).
|
||||
|
||||
+/-w Warten oder kein Warten auf die Nutzbarkeit der
|
||||
Datenbank dbname (iql(mutos)).
|
||||
|
||||
-fillfactorn Ist die Spezifikation des Fuellfaktors n
|
||||
(Zahl).
|
||||
|
||||
-minpagesn Ist die Spezifikation der Mindestseitenanzahl n
|
||||
(Zahl).
|
||||
|
||||
-maxpagesn ist die Spezifikation der maximalen
|
||||
Seitenanzahl n (Zahl).
|
||||
|
||||
BEISPIELE
|
||||
|
||||
modifyr -fillfactor30 dt personal cisam
|
||||
|
||||
|
||||
SIEHE AUCH
|
||||
modify(ql)
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
PRINT(QL) DABA16 PRINT(QL)
|
||||
|
||||
NAME
|
||||
print - Drucken von Relationen
|
||||
|
||||
UEBERSICHT
|
||||
print relname {, relname}
|
||||
|
||||
BESCHREIBUNG
|
||||
Print zeigt den Inhalt jeder spezifizierten Relation am Ter-
|
||||
minal (Standardausgabe) an. Die Standardformate der ver-
|
||||
schiedenen Domaenen-Typen koennen durch die Benutzung von
|
||||
Flags beim iql Aufruf definiert werden.
|
||||
|
||||
|
||||
BEISPIELE
|
||||
/* Drucken der Relation "personal" und "teile" */
|
||||
print personal
|
||||
print personal, teile
|
||||
|
||||
SIEHE AUCH
|
||||
iql(mutos), permit(ql), printr(mutos) retrieve(ql),
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
PRINTR(MUTOS) DABA16 PRINTR(MUTOS)
|
||||
|
||||
NAME
|
||||
printr - Drucken von Relationen
|
||||
|
||||
UEBERSICHT
|
||||
printr [ flags ] dbname { relname }
|
||||
|
||||
BESCHREIBUNG
|
||||
Printr druckt die spezifizierten Relationen der spezifizier-
|
||||
ten Datenbank (analog der print QL-Anweisung. Um dieses
|
||||
Kommando auszufuehren, muss fuer den Nutzer retrieve Befug-
|
||||
nis gestattet sein.
|
||||
|
||||
Akzeptierte Flags sind die iql-Flags (iql(mutos)) -u, +/-w,
|
||||
-c, -i, -f und -v sowie die printr-spezifischen Flags -s -h.
|
||||
|
||||
Bedeutung:
|
||||
|
||||
-h[N] setzt pro Seite eine Ueberschrift (header). Mit der
|
||||
Angabe von N kann die Anzahl der zu druckenden Zeilen
|
||||
pro Seite veraendert werden. Die Anzahl der Zeilen pro
|
||||
Seite wird standardmaessig auf 66 gesetzt.
|
||||
|
||||
-s unterdrueckt die Kopf- und Fusszeilen.
|
||||
|
||||
SIEHE AUCH
|
||||
iql(mutos), print(ql)
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
PURGE(MUTOS) DABA16 PURGE(MUTOS)
|
||||
|
||||
NAME
|
||||
purge - Zerstoeren verfallener und temporaerer Relationen
|
||||
|
||||
UEBERSICHT
|
||||
purge [ -f ] [ -p ] [ -a ] [ -s ] [ -w ] { dbname }
|
||||
|
||||
BESCHREIBUNG
|
||||
Purge loescht in den spezifizierten Datenbanken verfallene
|
||||
Nutzerrelationen oder temporaere Systemrelationen.
|
||||
|
||||
SIEHE AUCH
|
||||
save(ql), restore(mutos)
|
||||
|
||||
FEHLERQUELLEN
|
||||
Wenn keine Datenbanknamen spezifiziert wurden, werden nur
|
||||
die Datenbanken, die im Directory data/base lokalisiert
|
||||
sind, bearbeitet.
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
RANGE(QL) DABA16 RANGE(QL)
|
||||
|
||||
NAME
|
||||
range - Deklarieren einer Variablen (Tupelvariablen) ueber
|
||||
einer Relation
|
||||
|
||||
UEBERSICHT
|
||||
range [ [ of ] tuple_variable is relname ]
|
||||
|
||||
BESCHREIBUNG
|
||||
Range muss benutzt werden, um Variablen zu definieren, die
|
||||
in nachfolgenden QL-Anweisungen verwendet werden. Wenn nur
|
||||
range (ohne Operanden) spezifiziert wird, werden die bereits
|
||||
vom DBBS registrierten Tupelvariablen angezeigt. Die Varia-
|
||||
ble tuple_variable wird mit der durch relname spezifizierten
|
||||
Relation verbunden.
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
/* Deklarieren der Tupel-Variablen p, die sich ueber die
|
||||
Relation "personal" bewegt */
|
||||
range of p is personal
|
||||
|
||||
|
||||
|
||||
SIEHE AUCH
|
||||
ql(iql), destroy(ql)
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
REFR(MUTOS) DABA16 REFR(MUTOS)
|
||||
|
||||
NAME
|
||||
refr - Anzeige einer Komponenten-Kurzbeschreibung
|
||||
|
||||
UEBERSICHT
|
||||
refr { komponentenname }
|
||||
|
||||
BESCHREIBUNG
|
||||
Refr zeigt - analog \help - ohne die Angabe von Parametern
|
||||
eine Uebersicht ueber die zur Verfuegung stehenden Komponen-
|
||||
tenbeschreibungen. Es werden die Anweisungen und Kommandos
|
||||
der Handbuchteile MUTOS, QL sowie Beschreibungen zu ausge-
|
||||
waehlten Files in .../sys/etc angezeigt.
|
||||
Bei der Angabe von Namen der Komponentenbeschreibungen (kom-
|
||||
ponentenname) wird eine Kurzinformation zur Syntax und zu
|
||||
den Flags der entsprechenden Kommandos oder eine kurze Be-
|
||||
schreibung der Files angezeigt.
|
||||
|
||||
BEISPIEL
|
||||
refr printr
|
||||
zeigt die Dokumentation des Kommandos "printr(mutos)".
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
REPLACE(QL) DABA16 REPLACE(QL)
|
||||
|
||||
NAME
|
||||
replace - Ersetzen von Domaenen-Werten in einer Relation
|
||||
|
||||
UEBERSICHT
|
||||
replace tuple_variable (target_list) [where qual]
|
||||
|
||||
BESCHREIBUNG
|
||||
Replace aendert die Werte von Domaenen, spezifiziert in der
|
||||
target_list, fuer alle Tupel, die die Qualifikation qual er-
|
||||
fuellen. Die Tupel-Variable tuple_variable muss deklariert
|
||||
worden sein, um sich ueber die zu modifizierende Relation
|
||||
bewegen zu koennen. Es ist zu bemerken, dass eine Tupel-
|
||||
Variable und kein Relationsname gefordert ist. Nur Doma-
|
||||
enen, die modifiziert werden sollen, muessen in der
|
||||
target_list auftreten. Diese Domaenen muessen als
|
||||
Ergebnis-Attributnamen (result_attnames) in der target_list
|
||||
entweder explizit oder als Annahme spezifiziert werden
|
||||
(ql(iql)).
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
/* Alle Beschaeftigten des Leiters "Lehmann,Bernd"
|
||||
erhalten eine Gehaltserhoehung von 10% */
|
||||
range of p is personal
|
||||
replace p(gehalt = 1.1 * p.gehalt)
|
||||
where p.leiter = "Lehmann,Bernd"
|
||||
|
||||
SIEHE AUCH
|
||||
integrity(ql), permit(ql), ql(iql), range(ql)
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
REPORT(MUTOS) DABA16 REPORT(MUTOS)
|
||||
|
||||
NAME
|
||||
report - DABA-Reportunterstuetzung
|
||||
|
||||
UEBERSICHT
|
||||
|
||||
rc {[ flags ] file }
|
||||
|
||||
rd [ flags ] dbname [ file ]
|
||||
|
||||
rg [ flags ]
|
||||
|
||||
rp_desc [ desc_file ]
|
||||
|
||||
|
||||
BESCHREIBUNG
|
||||
Die Reportunterstuetzung gestattet dem Nutzer das Erzeugen
|
||||
von Berichten (Reports), deren Daten aus einem separaten
|
||||
Tupel-Files entnommen werden.
|
||||
|
||||
Fuer das Erstellen des Tupel-Files aus einer Relation der
|
||||
Datenbank koennen die DABA-Komponenten copy (copy(ql)) oder
|
||||
copyr (copyr(mutos)) genutzt werden.
|
||||
|
||||
Die Reportunterstuetzung besteht aus einem Report-Compiler
|
||||
rc, einem Kommando zum Erzeugen eines Domaenen-
|
||||
Beschreibungs(Description)-Files oder eines Skelett-
|
||||
Reportprogrammes rd aus der Datenbeschreibung einer Relation
|
||||
der Datenbank, einem Report-Generator (Interpreter) rg und
|
||||
einem Kommando zum Drucken (Anzeigen) des Beschreibungs-
|
||||
Files rp_desc.
|
||||
|
||||
SIEHE AUCH
|
||||
rc(mutos), rd(mutos), rg(mutos), rp_desc(mutos),
|
||||
report(mutos) report(daba)
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
RESTORE(MUTOS) DABA16 RESTORE(MUTOS)
|
||||
|
||||
NAME
|
||||
restore - Wiederherstellen nach einem DBBS- oder MUTOS-
|
||||
Absturz
|
||||
|
||||
UEBERSICHT
|
||||
restore [ -s ] [ -a ] [ -f ] [ +/-p ] [ +/-w ]
|
||||
[ -S ] [ -P ] { dbname }
|
||||
|
||||
BESCHREIBUNG
|
||||
Restore wird zum Wiederherstellen einer Datenbank verwendet,
|
||||
nachdem ein DABA- oder MUTOS-Absturz auftrat. Das Kommando
|
||||
sollte stets nach einer abnormalen Beendigung abgearbeitet
|
||||
werden, um die Integritaet der Datenbank zu sichern.
|
||||
|
||||
Um restore zu benutzen, muessen Sie der DBA der Datenbank
|
||||
oder der DABA-Systemverantwortliche (Verwendung des -s
|
||||
Flags) sein.
|
||||
|
||||
BEISPIEL[E]
|
||||
restore -f dt
|
||||
restore -a grants < /dev/null
|
||||
|
||||
|
||||
DIAGNOSE
|
||||
|
||||
SIEHE AUCH
|
||||
define(ql), index(ql), indexr(mutos), purge(mutos),
|
||||
sysmod(mutos)
|
||||
|
||||
FEHLERQUELLEN
|
||||
Wenn keine Datenbanknamen spezifiziert wurden, werden nur
|
||||
die im Directory data/base lokalisierten Datenbanken zu-
|
||||
rueckgespeichert.
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
RETRIEVE(QL) DABA16 RETRIEVE(QL)
|
||||
|
||||
NAME
|
||||
retrieve - Wiederfinden (Suchen) von Tupel aus einer Rela-
|
||||
tion
|
||||
|
||||
UEBERSICHT
|
||||
retrieve [[into] relname ] (target_list) [where qual ]
|
||||
|
||||
retrieve unique (target_list) [where qual ]
|
||||
|
||||
BESCHREIBUNG
|
||||
Retrieve stellt alle Tupel bereit, die die Qualifikation er-
|
||||
fuellen und zeigt sie entweder am Terminal (Standardausgabe)
|
||||
an oder speichert sie in eine neue Relation. Wurde into mit
|
||||
relname nicht spezifiziert, werden doppelte Tupel nicht aus-
|
||||
geblendet. Wenn relname spezifiziert wurde, wird das Ergeb-
|
||||
nis der Anfrage mit diesem Namen in eine neue Relation ge-
|
||||
speichert.
|
||||
|
||||
Wenn das Schluesselwort unique spezifiziert wird, werden die
|
||||
Tupel nach der Reihenfolge der angegebenenen Domaenen sor-
|
||||
tiert und doppelte Tupel vor der Anzeige entfernt.
|
||||
|
||||
|
||||
BEISPIEL[E]
|
||||
/* Finde alle Beschaeftigten, die mehr als ihr
|
||||
Leiter verdienen */
|
||||
|
||||
range of p is personal
|
||||
range of l is personal
|
||||
retrieve (p.name) where p.leiter = l.name
|
||||
and p.gehalt > l.gehalt
|
||||
|
||||
/* Finde alle Domaenen fuer Personen,
|
||||
die mehr als das Durchschnittsgehalt verdienen */
|
||||
|
||||
retrieve into temp (p.all) where p.gehalt > avg(p.gehalt)
|
||||
|
||||
/* Wiederfinden der Beschaeftigtennamen, sortiert */
|
||||
|
||||
retrieve unique (p.name)
|
||||
|
||||
SIEHE AUCH
|
||||
iql(mutos), modify(ql), permit(ql), ql(iql), range(ql),
|
||||
save(ql)
|
||||
|
|
@ -0,0 +1,87 @@
|
|||
RG(MUTOS) DABA16 RG(MUTOS)
|
||||
|
||||
NAME
|
||||
rg - REPORT-Generator (Interpreter)
|
||||
|
||||
UEBERSICHT
|
||||
rg [ flags ]
|
||||
|
||||
BESCHREIBUNG
|
||||
|
||||
Zur File-Umlenkung sind folgende Flags implementiert:
|
||||
|
||||
-dfile Nutzung des Domaenen-Beschreibungs-Files file.
|
||||
|
||||
Standard: desc
|
||||
|
||||
-ffile Nutzung des Tupel-Files file.
|
||||
|
||||
Standard: tuple
|
||||
|
||||
-ifile Nutzung des Reportcode-Files file.
|
||||
|
||||
Standard: r_code
|
||||
|
||||
-ofile Setze das Report-Ausgabe-Files auf file.
|
||||
|
||||
Standard: Standard-Output
|
||||
|
||||
Zur Ein-/Ausgabesteuerung sind folgende Flags
|
||||
implementiert:
|
||||
|
||||
-lno
|
||||
(entspricht LINES no)
|
||||
Laenge des Informationsteils auf einer Seite (no Zei-
|
||||
len)
|
||||
|
||||
Standard: Wert von ALL LINES, wenn dort definiert,
|
||||
sonst: 66
|
||||
|
||||
-ano (entspricht ALL LINES no)
|
||||
Laenge der physischen Druckseite (no Zeilen)
|
||||
|
||||
Standard: Wert von LINES)
|
||||
|
||||
-cno (entspricht COLUMNS no)
|
||||
Breite des Informationsteils (no Spalten)
|
||||
|
||||
Standard: 132
|
||||
-pno (entspricht FROM PAGE no)
|
||||
Es werden nur die Seiten in die Liste eingetragen, de-
|
||||
ren Seitennummer groesser oder gleich der angegebenen
|
||||
Zahl no ist.
|
||||
|
||||
Standard: 0
|
||||
|
||||
-Pno (entspricht TO PAGE no)
|
||||
Es werden nur die Seiten in die Liste eingetragen, de-
|
||||
ren Seitennummer kleiner oder gleich der angegebenen
|
||||
Zahl no ist.
|
||||
|
||||
Standard: 32767 (Maximum)
|
||||
|
||||
-tno (entspricht FROM TUPLE no)
|
||||
Es werden nur die Tupel verarbeitet, deren Tupelnummer
|
||||
groesser oder gleich der angegebenen Zahl no ist.
|
||||
|
||||
Standard: 0
|
||||
|
||||
-Tno (entspricht TO TUPLE no)
|
||||
Es werden nur die Tupel verarbeitet, deren Tupelnummer
|
||||
kleiner oder gleich der angegebenen Zahl no ist.
|
||||
|
||||
Standard: 32767 (Maximum)
|
||||
|
||||
-b (entspricht BIG)
|
||||
Alle Kleinbuchstaben werden beim Einschreiben in die
|
||||
Liste automatisch in Grossbuchstaben umgewandelt.
|
||||
|
||||
Standard: keine Umwandlung
|
||||
|
||||
-Xno Setze Debug-Information = `no'
|
||||
-Sno Setze SWITCH `no' = TRUE
|
||||
-Vno=val Setze VAR `no' = `val'
|
||||
|
||||
SIEHE AUCH
|
||||
rc(mutos), rd(mutos), rp_desc(mutos), report(mutos), report
|
||||
(daba)
|
||||
Loading…
Reference in New Issue