Benutzer-Werkzeuge

Webseiten-Werkzeuge


libreoffice_base

LibreOffice Base

http://www.brg-woergl.tsn.at/Access/OOBase/index.html
http://www.ooowiki.de/SQL

Relationales Datenbankmanagementsystem

  • LibreOffice Base starten
  • Neue Datenbank erstellen > Weiter
  • Nein, die Datenbank soll nicht angemeldet werden
  • Name: schule > Fertigstellen

Tabelle

Tabelle in der Entwurfsansicht erstellen
Feldnamen vergeben und Felddatentypen zuordnen

FeldnameNrKlasseNameGeschlechtStrassePLZOrtGeb_datumFahrschueler
FeldtypInteger/Auto-WertTextTextTextTextTextTextDatumJa/Nein

Primärschlüssel setzen: Das Feld Nr markieren > re Maustaste > Primärschlüssel
Tabelle speichern > Name der Tabelle: schueler > OK > Fenster schließen
Tabelle schueler öffnen
Eingabe der Schüler

NrKlasseNameGeschlechtStrassePLZOrtGeb_datumFahrschueler
2AZuegg TinawKlosterwiesgasse 158010Graz27.5.99Ja
2AHuber JörgmKarlauer Str. 568020Graz8.9.00Nein

Datei > Schließen

Formulare > Formular unter Verwendung des Assistenten erstellen…

Formular schueler öffnen

NrKlasseNameGeschlechtStrassePLZOrtGeb_datumFahrschueler
2ABayer FriedrichmSt. Peter Hauptstraße 878010Graz5.5.01Ja
2AGrabner HelmutmMünzgrabenstraße 1048010Graz9.3.01Nein
2AMaitz HelgawSchießstattgasse 68010Graz12.10.00Ja

Importieren und Exportieren von Daten in Base

Importieren (CALC -> BASE)

schueler5-19.csv
Nr;Klasse;Name;Geschlecht;Strasse;PLZ;Ort;Geb_datum;Fahrschueler
5;2A;Richter Monika;w;Schönaugürtel 56;8010;Graz;04.07.01;0
6;2A;Berner Josef;m;Lenaugasse 5;8010;Graz;04.08.01;0
7;2A;Tiefengraber Manfred;m;Pestalozzistr. 10;8010;Graz;29.01.01;0
8;2A;Willitsch Hermann;m;Steinfeldgasse 12;8020;Graz;23.05.01;1
9;2A;Edlinger Fritz;m;Zeppelinstr. 76;8010;Graz;11.10.01;1
10;8A;Höller Susanne;w;Flurgasse 6;8010;Graz;14.08.95;1
11;8A;Maitz Franz;m;Steyrergasse 3;8010;Graz;08.12.94;1
12;8A;Riegler Claudia;w;Schönaugürtel 12;8010;Graz;23.06.95;1
13;8A;Theißl Werner;m;Johann-Fux-Gasse 32;8020;Graz;17.09.94;1
14;8A;Ofner Martina;w;Feuerbachgasse 5;8020;Graz;08.11.94;1
15;8A;Drexler Ernst;m;Jahngasse 4;8010;Graz;31.01.95;1
16;8A;Paar Maria;w;Brauhausstraße 12;8020;Graz;05.03.95;0
17;8A;Lindner Richard;m;Stempfergasse 3;8010;Graz;05.07.95;0
18;8A;Stark Karin;w;Alte Poststr. 34;8020;Graz;21.04.95;1
19;8A;Koren Michael;m;Glacisstr. 75;8010;Graz;06.07.95;0
  • Calc
    • schuler5-19.csv herunterladen und mit Calc öffnen
    • Zeichensatz: UTF-8 > [x] Semikolon > OK
    • Geburtsdaten (ohne Überschrift) markieren > re. Maustaste > Zellen formatieren > Datum > OK
    • Zeile 1 enthält die Feldnamen
    • Zeile 2- enthalten die Daten
    • Alle Zellen (A1:I16) markieren und in die Zwischenablage kopieren
  • Base - neue Tabelle erstellen
    • Im Tabellenfenster re. Maustaste > Einfügen > Tabellenname: schueler5-19 > (x) Definition und Daten > [x] Erste Zeile als Spaltennamen verwenden > Weiter > alle Spalten übernehmen > Weiter > Geb_datum den Feldtyp: Datum zuordnen > Fertigstellen > Soll jetzt ein Primärschlüssel erzeugt werden? > Nein
  • Base - Daten an bestehende Tabelle anhängen
    • Im Tabellenfenster re. Maustaste auf Tabelle schuler > Einfügen > (x) Daten anhängen > [x] Erste Zeile als Spaltennamen verwenden > Weiter > Fertigstellen

Exportieren (BASE -> CALC)

  • Base: re. Maustaste auf Tabellenname > Kopieren
  • Calc: re. Maustaste in Zelle A1 > Einfügen (wenn alle Einträge durchgestrichen sind: Daten markieren > Menü Format > Direkte Formatierung löschen

Tabellen importieren

weitsprung.csv
Nr;Weit
0;4,60
1;3,40
2;3,50
3;4,10
4;3,55
5;4,15
6;4,40
7;3,90
8;3,30
9;3,45
10;3,25
11;4,05
12;4,50
13;4,50
14;5,00
15;4,10
16;4,85
17;3,95
18;4,35
19;4,25

Abfrage

http://www.brg-woergl.tsn.at/Access/OOBase/abfrage2.html
http://help.libreoffice.org/Common/Query_Design/de

Abfrage in der Entwurfsansicht erstellen
Tabellen: schueler > Hinzufügen > Schließen
Kriterium: Ja oder 1 bei Fahrschueler

Kriterien:

IST LEER
IST NICHT LEER
WIE '??e*'
NICHT WIE '??e*'
ZWISCHEN #1.1.2001# UND #31.12.2001#
NICHT ZWISCHEN #1.1.2001# UND #31.12.2001#
IN (a;b;c; …)
IN ('3A';'5A';'6A')
NICHT IN (a;b;c; …)
NICHT IN ('3A';'5A';'6A')
WAHR
1
FALSCH
0

Parameterabfrage

Kriterium: ?

5a, 26.11.2014

Löschabfrage

Kopie (schuelerbak) der Tabelle schueler anlegen

Extras > SQL >

DELETE FROM "schuelerbak" WHERE "Klasse"='8A' > Ausführen
DELETE FROM "Tabellenname"
WHERE ("Feld 1" LIKE 'Wert 1') AND ("Feld 2" > 'Wert 2') - Filterbedingung

Anfügeabfrage

Abfrage ausführen (Klasse 8A) > Ergebnistabelle links oben (links vom ersten Feldnamen) durch li. Klick markieren > kopieren > Datenbankfenster > Tabelle > entsprechende Tabelle markieren (schuelerbak) > Menü Bearbeiten > Inhalte einfügen … > Formatierter Text [RTF] > OK > Tabellenname: schuelerbak > Daten anhängen > Fertigstellen

Tabellenerstellungsabfrage

Abfrage erstellen > Abfrage mit der Maus in das Datenbankfenster auf Tabellen schieben > Tabellenname > Definition und Daten > Weiter > Fertigstellen
SELECT "Nr","Klasse", "Name", "Geschlecht", "Strasse", "PLZ", "Ort", "Geb_datum", "Fahrschueler" INTO "test2A" FROM "schueler" WHERE "Klasse" = '2A'

Aktualisierungsabfrage

Extras > SQL >

UPDATE "schuelerbak" SET "Klasse" = '3A' WHERE "Klasse"='2A'
Man darf den Befehl nicht in die SQL-Ansicht der Abfrage reinschreiben, sondern unter EXTRAS – SQL in einen SQL-Statement Interpreter reinschreiben. Dann auf "Ausführen" - Siehe da! Es funktioniert!

Position einer Zeichenkette in einem Feld berechnen

Feld: POSITION ( ' ' IN "Name" )
Alias: pos

Zuname extrahieren

Feld: LEFT([Name], POSITION(' ' IN [Name])-1)
Alias: Zuname

Vorname extrahieren

Feld: SUBSTR([Name], POSITION(' ' IN [Name])+1)
Alias: Vorname

Alter berechnen

Feld: DATEDIFF('yy',"Geb_datum",NOW())
Alias: alter

Eine ganze Datenbanktabelle löschen

  • re. Maustaste auf Tabellenname > Löschen oder
  • DROP TABLE "Tabellenname"

Bericht

  • Bericht unter Verwendung des Assistenten erstellen…
  • Bericht in Entwurfsansicht erstellen
  • Zähler: Textfeld einfügen > Eigenschaften (F4) > Daten > Datenfeld-Typ > Zähler
  • Klassenliste für 2A und 8A erstellen, Abfrage mit Parameterabfrage bei Klasse

5B, 4.15.2014

Beziehungen

  • 1:n → Klasse:Schüler
  • 1:1 → Schüler:Weitsprung
  • m:n → Lehrer:Fächer
libreoffice_base.txt · Zuletzt geändert: 2015/01/22 13:04 von admin