fdenzer-patch-1 #2
4 changed files with 79 additions and 1 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -1 +1,2 @@
|
|||
.idea
|
||||
.idea
|
||||
db/*
|
12
db_scripts/README.md
Normal file
12
db_scripts/README.md
Normal file
|
@ -0,0 +1,12 @@
|
|||
# Datenbank
|
||||
|
||||
## Aufsetzen - SQLite
|
||||
|
||||
Erstellen / Verbinden mit der Datenbank
|
||||
```sqlite3 ../db/test.db```
|
||||
|
||||
Tabellen anlegen (nach Verbindung durch *sqlite3* besteht)
|
||||
```.read create.sql```
|
||||
|
||||
In einem Schritt:
|
||||
```sqlite3 ../db/test.db -init create.sql```
|
62
db_scripts/create.sql
Normal file
62
db_scripts/create.sql
Normal file
|
@ -0,0 +1,62 @@
|
|||
CREATE TABLE IF NOT EXISTS mitglied (
|
||||
mitglied_id INT NOT NULL PRIMARY KEY,
|
||||
haushalt VARCHAR(100) NOT NULL,
|
||||
erweiterter_haushalt VARCHAR(100),
|
||||
einlage INT NOT NULL,
|
||||
guthaben INT NOT NULL,
|
||||
kontoauszuege BOOLEAN NOT NULL,
|
||||
aktiv BOOLEAN NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS transaktion_art (
|
||||
art_id INT NOT NULL PRIMARY KEY,
|
||||
art VARCHAR(50) NOT NULL
|
||||
);
|
||||
|
||||
INSERT OR IGNORE INTO transaktion_art(art_id, art) VALUES (1, 'monatlicher_beitrag');
|
||||
INSERT OR IGNORE INTO transaktion_art(art_id, art) VALUES (2, 'aufladung');
|
||||
INSERT OR IGNORE INTO transaktion_art(art_id, art) VALUES (3, 'einkauf');
|
||||
|
||||
CREATE TABLE IF NOT EXISTS transaktion (
|
||||
transaktion_id INT NOT NULL PRIMARY KEY,
|
||||
mitglied_id INT NOT NULL,
|
||||
art_id INT NOT NULL,
|
||||
datum DATE NOT NULL,
|
||||
BETRAG INT NOT NULL,
|
||||
CONSTRAINT fk_mitglied_transaktion FOREIGN KEY (mitglied_id) REFERENCES mitglied(mitglied_id),
|
||||
CONSTRAINT fk_art_transaktion FOREIGN KEY (art_id) REFERENCES transaktion_art(art_id)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS monatlicher_beitrag (
|
||||
monatlicher_beitrag_id INT NOT NULL PRIMARY KEY,
|
||||
mitglied_id INT NOT NULL,
|
||||
anfangsdatum DATE NOT NULL,
|
||||
enddatum DATE NOT NULL,
|
||||
beitrag INT NOT NULL,
|
||||
CONSTRAINT fk_mitglied_beitrag FOREIGN KEY (mitglied_id) REFERENCES mitglied(mitglied_id)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS mwst (
|
||||
mwst_id INT NOT NULL PRIMARY KEY,
|
||||
prozent INT NOT NULL
|
||||
);
|
||||
|
||||
INSERT OR IGNORE INTO mwst(mwst_id, prozent) VALUES (1, 7);
|
||||
INSERT OR IGNORE INTO mwst(mwst_id, prozent) VALUES (2, 19);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS einheit(
|
||||
einheit_id INT NOT NULL PRIMARY KEY,
|
||||
bezeichnung VARCHAR(50) NOT NULL
|
||||
);
|
||||
|
||||
INSERT OR IGNORE INTO einheit(einheit_id, bezeichnung) VALUES (1, 'stueck');
|
||||
INSERT OR IGNORE INTO einheit(einheit_id, bezeichnung) VALUES (2, 'menge');
|
||||
|
||||
CREATE TABLE IF NOT EXISTS artikel (
|
||||
artikel_id INT NOT NULL PRIMARY KEY,
|
||||
einheit_id INT NOT NULL,
|
||||
mwst_id INT NOT NULL,
|
||||
preis INT NOT NULL,
|
||||
CONSTRAINT fk_mwst_artikel FOREIGN KEY (mwst_id) REFERENCES mwst(mwst_id),
|
||||
CONSTRAINT fk_einheit_artikel FOREIGN KEY (einheit_id) REFERENCES einheit(einheit_id)
|
||||
);
|
3
db_scripts/create_server.sql
Normal file
3
db_scripts/create_server.sql
Normal file
|
@ -0,0 +1,3 @@
|
|||
CREATE SERVER IF NOT EXISTS s
|
||||
FOREIGN DATA WRAPPER mysql
|
||||
OPTIONS (USER 'REMOTE', HOST '127.0.0.1', DATABASE 'test');
|
Loading…
Reference in a new issue