Skip to content
This repository was archived by the owner on Sep 18, 2020. It is now read-only.

Backend 2.5 Datenbank

Maren edited this page Jan 26, 2015 · 11 revisions

← zurück zum Backend Wiki

#Datenbank

Verantwortliche/r: Tabea, Maren

Datenbank einrichten

Das in der Designphase erstellte Datenmodell dient als Grundlage, nach der die Datenbank für die App eingerichtet wird. Zur Verfügung steht eine H2 Datenbank. Mittels SQL werden die Datenbanktabellen, wie im Datenmodellen dargestellt, hinzugefügt.

Für die einzelnen Datensätze der Bars wird ein extra SQL File verwendet. Wie die Daten immigriert werden wird unter dem Arbeitspaket Datenmigration beschrieben.

Erstellen der Datenbank

Die Einstellungen der Datenbank sind in der Settings.java-Klasse festgesetzt. Dort befindet sich sowohl die URL der Datenbank, als auch der User Name und Passwort, die Anzahl der maximalen Statements und der Pool-Größe. Hinzu kommt hier die Einbindung der SQL-Files zum Erstellen der Datenbank.

DB-H2-create.sql

In diesem SQL-File werden die vier Datenbanktabellen erstellt, die in dem Datenbankmodell festgelegt worden.

1. Die HappyHour-Tabelle Die happyHour-Datenbanktabelle enthält alle Daten zu den einzelnen Happy Hours einer Bar.

create table happyHour (
	id						identity not null,
	barID					varchar(50),
	description				varchar(255),
	start					time not null,
	end						time,
	monday					boolean not null,
	tuesday					boolean not null,
	wednesday				boolean not null,
	thursday				boolean not null,
	friday					boolean not null,
	saturday				boolean not null,
	sunday					boolean not null,
	constraint pk_happyHour primary key (id)
);

2. Die Route-Tabelle Die route-Tabelle enthält alle Daten zu den gespeicherten Routen. Ist der Boolean Top auf true gesetzt, so handelt es sich dabei um eine der sieben top Routen.

create table route (
	hash				varchar(255),
	data				varchar(4096) not null,
	top					boolean not null,
	constraint pk_route primary key (hash)
);

3. Die barReport-Tabelle Die barReport- Tabelle speichert alle Meldungen von Bars ab. Diese können von dem Admin ausgelesen und gelöscht werden.

create table barReport (
	id						identity not null,
	barID					varchar(50),
	description				varchar(255),
	constraint pk_barMeldung primary key (id)
);

4. Die User-Tabelle Die user-Tabelle enthält alle Daten des Admin, wodurch dieser authentifiziert wird.

create table user (
	name					varchar(50) not null,
	hashPw					varchar(50) not null,
	constraint pk_user primary key (name)
);

Clone this wiki locally