Skip to content
Snippets Groups Projects
Commit af1007ed authored by Peter Gerwinski's avatar Peter Gerwinski
Browse files

Vorbereitung 18.12.2024

parent fe407e69
Branches
No related tags found
No related merge requests found
Showing
with 1902 additions and 0 deletions
cassini/home/peter/bo/2024ws/dbs/20241211> ls *.sql
testdb-dump-20241211-01.sql
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbsadmin -W testdb < testdb-dump-20241211-01.sql
Passwort:
SET
SET
SET
SET
SET
set_config
------------
(1 Zeile)
SET
SET
SET
SET
ALTER TABLE
ALTER TABLE
DROP TABLE
DROP VIEW
DROP TABLE
DROP TABLE
DROP TABLE
SET
SET
CREATE TABLE
ALTER TABLE
CREATE TABLE
ALTER TABLE
CREATE TABLE
ALTER TABLE
CREATE VIEW
ALTER TABLE
CREATE TABLE
ALTER TABLE
COPY 3
COPY 2
COPY 5
COPY 3
ALTER TABLE
ALTER TABLE
GRANT
GRANT
GRANT
GRANT
GRANT
cassini/home/peter/bo/2024ws/dbs/20241211>
testdb=> select * from tier;
name | tierart | id
-----------+-----------+----
Schnubbel | Kaninchen | 42
Hektor | Hund | 7
Esmeralda | Spinne | 94
(3 Zeilen)
testdb=> select count (*) from tier;
count
-------
3
(1 Zeile)
testdb=> select sum (id) from tier;
sum
-----
143
(1 Zeile)
testdb=> select min (id) from tier;
min
-----
7
(1 Zeile)
testdb=> select max (id) from tier;
max
-----
94
(1 Zeile)
testdb=> select avg (id) from tier;
avg
---------------------
47.6666666666666667
(1 Zeile)
testdb=>
testdb=> select * from tier;
name | tierart | id
-----------+-----------+----
Schnubbel | Kaninchen | 42
Hektor | Hund | 7
Esmeralda | Spinne | 94
(3 Zeilen)
testdb=> insert into tier (name, tierart, id) values ('Arancha', 'Spinne', 2010); INSERT 0 1
testdb=> insert into tier (name, tierart, id) values ('Timmy', 'Hund', 1990); INSERT 0 1
testdb=> select * from tier;
name | tierart | id
-----------+-----------+------
Schnubbel | Kaninchen | 42
Hektor | Hund | 7
Esmeralda | Spinne | 94
Arancha | Spinne | 2010
Timmy | Hund | 1990
(5 Zeilen)
testdb=> select avg (id) from tier where tierart = 'Spinne';
avg
-----------------------
1052.0000000000000000
(1 Zeile)
testdb=> select avg (id) from tier group by tierart;
avg
-----------------------
1052.0000000000000000
998.5000000000000000
42.0000000000000000
(3 Zeilen)
testdb=> select avg (id), tierart from tier group by tierart;
avg | tierart
-----------------------+-----------
1052.0000000000000000 | Spinne
998.5000000000000000 | Hund
42.0000000000000000 | Kaninchen
(3 Zeilen)
testdb=>
testdb=> select avg (id), tierart from tier group by tierart having tierart >= 'K';
avg | tierart
-----------------------+-----------
1052.0000000000000000 | Spinne
42.0000000000000000 | Kaninchen
(2 Zeilen)
testdb=>
testdb=> \d lied
Tabelle »public.lied«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
--------+---------+--------------+---------------+-------------
id | integer | | |
track | integer | | |
titel | text | | |
Fremdschlüssel-Constraints:
"lied_fkey" FOREIGN KEY (id) REFERENCES cd(id) ON DELETE CASCADE
testdb=> \d cd
Tabelle »public.cd«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
------------------+---------+--------------+---------------+-------------
id | integer | | not null |
albumtitel | text | | |
interpret | integer | | |
erscheinungsjahr | integer | | |
Indexe:
"cd_pkey" PRIMARY KEY, btree (id)
Fremdschlüsselverweise von:
TABLE "lied" CONSTRAINT "lied_fkey" FOREIGN KEY (id) REFERENCES cd(id) ON DELETE CASCADE
testdb=> select * from kuenstler;
id | interpret | gruendungsjahr
-----+------------+----------------
311 | Anastacia | 1999
312 | Pink Floyd | 1965
(2 Zeilen)
testdb=> create index kuenstler_index on kuenstler ( interpret );
FEHLER: Berechtigung nur für Eigentümer der Tabelle kuenstler
testdb=> \q
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbsadmin -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> create index kuenstler_index on kuenstler ( interpret );
CREATE INDEX
testdb=> \d kuenstler
Tabelle »public.kuenstler«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
----------------+---------+--------------+---------------+-------------
id | integer | | |
interpret | text | | |
gruendungsjahr | integer | | |
Indexe:
"kuenstler_index" btree (interpret)
testdb=>
testdb=> \d cd_lieder
Sicht »public.cd_lieder«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
------------------+---------+--------------+---------------+-------------
id | integer | | |
albumtitel | text | | |
gruendungsjahr | integer | | |
erscheinungsjahr | integer | | |
track | integer | | |
titel | text | | |
testdb=> \d+ cd_lieder
Sicht »public.cd_lieder«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert | Speicherung | Beschreibung
------------------+---------+--------------+---------------+-------------+-------------+--------------
id | integer | | | | plain |
albumtitel | text | | | | extended |
gruendungsjahr | integer | | | | plain |
erscheinungsjahr | integer | | | | plain |
track | integer | | | | plain |
titel | text | | | | extended |
Sichtdefinition:
SELECT c.id,
c.albumtitel,
k.gruendungsjahr,
c.erscheinungsjahr,
l.track,
l.titel
FROM cd c
JOIN kuenstler k ON c.interpret = k.id
JOIN lied l ON c.id = l.id;
testdb=> create view cd_lieder as select c.id, c.albumtitel, k.gruendungsjahr, c.erscheinungsjahr, l.track, l.titel from cd as c join kuenstler as k on c.interpret = k.id join lied as l on c.id = l.id;
FEHLER: keine Berechtigung für Schema public
testdb=> drop view cd_lieder;
FEHLER: Berechtigung nur für Eigentümer der Sicht cd_lieder
testdb=> select c.id, c.albumtitel, k.gruendungsjahr, c.erscheinungsjahr, l.track, l.titel from cd as c join kuenstler as k on c.interpret = k.id join lied as l on c.id = l.id;
id | albumtitel | gruendungsjahr | erscheinungsjahr | track | titel
------+--------------------+----------------+------------------+-------+----------------------------
4711 | Not That Kind | 1999 | 2000 | 1 | Not That Kind
4711 | Not That Kind | 1999 | 2000 | 2 | I'm Outta Love
4711 | Not That Kind | 1999 | 2000 | 3 | Cowboys & Kisses
4712 | Wish You Were Here | 1965 | 1975 | 1 | Shine On You Crazy Diamond
4713 | Freak of Nature | 1999 | 2001 | 1 | Paid my Dues
(5 Zeilen)
testdb=>
\q
[1]+ Fertig ypdf f dbs-uebung-20241211.pdf
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbsadmin -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> \d cd
Tabelle »public.cd«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
------------------+---------+--------------+---------------+-------------
id | integer | | |
albumtitel | text | | |
interpret | integer | | |
erscheinungsjahr | integer | | |
testdb=> alter table cd id int primary key;
FEHLER: Syntaxfehler bei »id«
ZEILE 1: alter table cd id int primary key;
^
testdb=> alter table ( cd id int primary key );
FEHLER: Syntaxfehler bei »(«
ZEILE 1: alter table ( cd id int primary key );
^
testdb=> alter table cd add constraint cd_pkey primary key id;
FEHLER: Syntaxfehler bei »id«
ZEILE 1: alter table cd add constraint cd_pkey primary key id;
^
testdb=> alter table cd add constraint cd_pkey primary key (id);
ALTER TABLE
testdb=> \d cd
Tabelle »public.cd«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
------------------+---------+--------------+---------------+-------------
id | integer | | not null |
albumtitel | text | | |
interpret | integer | | |
erscheinungsjahr | integer | | |
Indexe:
"cd_pkey" PRIMARY KEY, btree (id)
testdb=>
testdb=> alter table cd add constraint cd_pkey primary key (id);
ALTER TABLE
testdb=> \d cd
Tabelle »public.cd«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
------------------+---------+--------------+---------------+-------------
id | integer | | not null |
albumtitel | text | | |
interpret | integer | | |
erscheinungsjahr | integer | | |
Indexe:
"cd_pkey" PRIMARY KEY, btree (id)
testdb=> alter table cd add constraint lied_fkey foreign key (id) references cd (id);
ALTER TABLE
testdb=> \d lied
Tabelle »public.lied«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
--------+---------+--------------+---------------+-------------
id | integer | | |
track | integer | | |
titel | text | | |
testdb=> \d+ lied
Tabelle »public.lied«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert | Speicherung | Kompression | Statistikziel | Beschreibung
--------+---------+--------------+---------------+-------------+-------------+-------------+---------------+--------------
id | integer | | | | plain | | |
track | integer | | | | plain | | |
titel | text | | | | extended | | |
Zugriffsmethode: heap
testdb=>
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbs -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> select c.id, c.albumtitel, k.gruendungsjahr, c.erscheinungsjahr, l.track, l.titel from cd as c join kuenstler as k on c.interpret = k.id join lied as l on c.id = l.id; id | albumtitel | gruendungsjahr | erscheinungsjahr | track | titel
------+--------------------+----------------+------------------+-------+----------------------------
4713 | Freak of Nature | 1999 | 2001 | 1 | Paid my Dues
4711 | Not That Kind | 1999 | 2000 | 3 | Cowboys & Kisses
4711 | Not That Kind | 1999 | 2000 | 2 | I'm Outta Love
4711 | Not That Kind | 1999 | 2000 | 1 | Not That Kind
4712 | Wish You Were Here | 1965 | 1975 | 1 | Shine On You Crazy Diamond
(5 Zeilen)
testdb=> delete from cd where id = 4711;
DELETE 1
testdb=> select * from cd;
id | albumtitel | interpret | erscheinungsjahr
------+--------------------+-----------+------------------
4712 | Wish You Were Here | 312 | 1975
4713 | Freak of Nature | 311 | 2001
(2 Zeilen)
testdb=> \d cd
Tabelle »public.cd«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
------------------+---------+--------------+---------------+-------------
id | integer | | not null |
albumtitel | text | | |
interpret | integer | | |
erscheinungsjahr | integer | | |
Indexe:
"cd_pkey" PRIMARY KEY, btree (id)
Fremdschlüssel-Constraints:
"lied_fkey" FOREIGN KEY (id) REFERENCES cd(id)
Fremdschlüsselverweise von:
TABLE "cd" CONSTRAINT "lied_fkey" FOREIGN KEY (id) REFERENCES cd(id)
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4711 | 2 | I'm Outta Love
4711 | 3 | Cowboys & Kisses
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
(5 Zeilen)
testdb=>
testdb=> \d lied
Tabelle »public.lied«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
--------+---------+--------------+---------------+-------------
id | integer | | |
track | integer | | |
titel | text | | |
testdb=> alter table cd alter constraint lied_fkey for
testdb=> alter table cd alter constraint lied_fkey foreign key (id) references cd (id);
FEHLER: Syntaxfehler bei »foreign«
ZEILE 1: alter table cd alter constraint lied_fkey foreign key (id) r...
^
testdb=> alter table cd drop constraint lied_fkey;
FEHLER: Berechtigung nur für Eigentümer der Tabelle cd
testdb=>
\q
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbsadmin -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> alter table cd drop constraint lied_fkey;
ALTER TABLE
testdb=>
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbsadmin -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> alter table cd drop constraint lied_fkey;
ALTER TABLE
testdb=> alter table lied add constraint lied_fkey foreign key (id) references cd (id); FEHLER: Einfügen oder Aktualisieren in Tabelle »lied« verletzt Fremdschlüssel-Constraint »lied_fkey«
DETAIL: Schlüssel (id)=(4711) ist nicht in Tabelle »cd« vorhanden.
testdb=>
testdb=> delete from cd where id = 4711;
DELETE 1
testdb=> select * from cd;
id | albumtitel | interpret | erscheinungsjahr
------+--------------------+-----------+------------------
4712 | Wish You Were Here | 312 | 1975
4713 | Freak of Nature | 311 | 2001
(2 Zeilen)
testdb=> \d cd
Tabelle »public.cd«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
------------------+---------+--------------+---------------+-------------
id | integer | | not null |
albumtitel | text | | |
interpret | integer | | |
erscheinungsjahr | integer | | |
Indexe:
"cd_pkey" PRIMARY KEY, btree (id)
Fremdschlüssel-Constraints:
"lied_fkey" FOREIGN KEY (id) REFERENCES cd(id)
Fremdschlüsselverweise von:
TABLE "cd" CONSTRAINT "lied_fkey" FOREIGN KEY (id) REFERENCES cd(id)
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4711 | 2 | I'm Outta Love
4711 | 3 | Cowboys & Kisses
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
(5 Zeilen)
testdb=>
testdb=> \d cd
Tabelle »public.cd«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
------------------+---------+--------------+---------------+-------------
id | integer | | not null |
albumtitel | text | | |
interpret | integer | | |
erscheinungsjahr | integer | | |
Indexe:
"cd_pkey" PRIMARY KEY, btree (id)
Fremdschlüssel-Constraints:
"lied_fkey" FOREIGN KEY (id) REFERENCES cd(id)
Fremdschlüsselverweise von:
TABLE "cd" CONSTRAINT "lied_fkey" FOREIGN KEY (id) REFERENCES cd(id)
testdb=> \d lied
Tabelle »public.lied«
Spalte | Typ | Sortierfolge | NULL erlaubt? | Vorgabewert
--------+---------+--------------+---------------+-------------
id | integer | | |
track | integer | | |
titel | text | | |
testdb=> alter table cd alter constraint lied_fkey for
testdb=> alter table cd alter constraint lied_fkey foreign key (id) references cd (id);
FEHLER: Syntaxfehler bei »foreign«
ZEILE 1: alter table cd alter constraint lied_fkey foreign key (id) r...
^
testdb=> alter table cd drop constraint lied_fkey;
FEHLER: Berechtigung nur für Eigentümer der Tabelle cd
testdb=>
\q
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbsadmin -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> alter table cd drop constraint lied_fkey;
ALTER TABLE
testdb=> alter table lied add constraint lied_fkey foreign key (id) references cd (id); FEHLER: Einfügen oder Aktualisieren in Tabelle »lied« verletzt Fremdschlüssel-Constraint »lied_fkey«
DETAIL: Schlüssel (id)=(4711) ist nicht in Tabelle »cd« vorhanden.
testdb=>
\q
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbs -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> insert into cd values ( 4711, 'Not That Kind', 311, 2000 );
INSERT 0 1
testdb=> select * from cd;
id | albumtitel | interpret | erscheinungsjahr
------+--------------------+-----------+------------------
4712 | Wish You Were Here | 312 | 1975
4713 | Freak of Nature | 311 | 2001
4711 | Not That Kind | 311 | 2000
(3 Zeilen)
testdb=> \q
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbsadmin -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> alter table lied add constraint lied_fkey foreign key (id) references cd (id);
ALTER TABLE
testdb=> \q
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbs -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> delete from cd where id = 4711; FEHLER: Aktualisieren oder Löschen in Tabelle »cd« verletzt Fremdschlüssel-Constraint »lied_fkey« von Tabelle »lied«
DETAIL: Auf Schlüssel (id)=(4711) wird noch aus Tabelle »lied« verwiesen.
testdb=>
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbsadmin -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> alter table lied alter constraint lied_fkey foreign key (id) references cd (id) on delete cascade;
FEHLER: Syntaxfehler bei »foreign«
ZEILE 1: alter table lied alter constraint lied_fkey foreign key (id)...
^
testdb=> alter table lied drop constraint lied_fkey;
ALTER TABLE
testdb=> alter table lied add constraint lied_fkey foreign key (id) references cd (id) on delete cascade;
ALTER TABLE
testdb=> \q
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbs -W testdb
Passwort:
psql: Fehler: Verbindung zum Server auf »localhost« (::1), Port 5432 fehlgeschlagen: FATAL: Passwort-Authentifizierung für Benutzer »dbs« fehlgeschlagen
Verbindung zum Server auf »localhost« (::1), Port 5432 fehlgeschlagen: FATAL: Passwort-Authentifizierung für Benutzer »dbs« fehlgeschlagen
cassini/home/peter/bo/2024ws/dbs/20241211> psql -h localhost -U dbs -W testdb
Passwort:
psql (15.10 (Debian 15.10-0+deb12u1))
SSL-Verbindung (Protokoll: TLSv1.3, Verschlüsselungsmethode: TLS_AES_256_GCM_SHA384, Komprimierung: aus)
Geben Sie »help« für Hilfe ein.
testdb=> delete from cd cascade where id = 4711; DELETE 1
testdb=> select * from cd;
id | albumtitel | interpret | erscheinungsjahr
------+--------------------+-----------+------------------
4712 | Wish You Were Here | 312 | 1975
4713 | Freak of Nature | 311 | 2001
(2 Zeilen)
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
(2 Zeilen)
testdb=>
#!/bin/bash
# clear
echo -e "\n\e[00m\e[01;33m$*\e[00m\e[m\n"
# echo "$*" | qrencode -t PNG -o - | display -sample "300%x300%" -geometry +0+60 - &
# read junk
# kill $!
# echo -en "\e[1A"
qrencode -t ANSI256UTF8 "$*"
echo
--
-- PostgreSQL database dump
--
-- Dumped from database version 15.10 (Debian 15.10-0+deb12u1)
-- Dumped by pg_dump version 15.10 (Debian 15.10-0+deb12u1)
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
ALTER TABLE ONLY public.lied DROP CONSTRAINT lied_fkey;
ALTER TABLE ONLY public.cd DROP CONSTRAINT cd_pkey;
DROP TABLE public.tier;
DROP VIEW public.cd_lieder;
DROP TABLE public.lied;
DROP TABLE public.kuenstler;
DROP TABLE public.cd;
SET default_tablespace = '';
SET default_table_access_method = heap;
--
-- Name: cd; Type: TABLE; Schema: public; Owner: dbsadmin
--
CREATE TABLE public.cd (
id integer NOT NULL,
albumtitel text,
interpret integer,
erscheinungsjahr integer
);
ALTER TABLE public.cd OWNER TO dbsadmin;
--
-- Name: kuenstler; Type: TABLE; Schema: public; Owner: dbsadmin
--
CREATE TABLE public.kuenstler (
id integer,
interpret text,
gruendungsjahr integer
);
ALTER TABLE public.kuenstler OWNER TO dbsadmin;
--
-- Name: lied; Type: TABLE; Schema: public; Owner: dbsadmin
--
CREATE TABLE public.lied (
id integer,
track integer,
titel text
);
ALTER TABLE public.lied OWNER TO dbsadmin;
--
-- Name: cd_lieder; Type: VIEW; Schema: public; Owner: dbsadmin
--
CREATE VIEW public.cd_lieder AS
SELECT c.id,
c.albumtitel,
k.gruendungsjahr,
c.erscheinungsjahr,
l.track,
l.titel
FROM ((public.cd c
JOIN public.kuenstler k ON ((c.interpret = k.id)))
JOIN public.lied l ON ((c.id = l.id)));
ALTER TABLE public.cd_lieder OWNER TO dbsadmin;
--
-- Name: tier; Type: TABLE; Schema: public; Owner: dbsadmin
--
CREATE TABLE public.tier (
name text,
tierart text,
id integer
);
ALTER TABLE public.tier OWNER TO dbsadmin;
--
-- Data for Name: cd; Type: TABLE DATA; Schema: public; Owner: dbsadmin
--
COPY public.cd (id, albumtitel, interpret, erscheinungsjahr) FROM stdin;
4712 Wish You Were Here 312 1975
4713 Freak of Nature 311 2001
4711 Not That Kind 311 2000
\.
--
-- Data for Name: kuenstler; Type: TABLE DATA; Schema: public; Owner: dbsadmin
--
COPY public.kuenstler (id, interpret, gruendungsjahr) FROM stdin;
311 Anastacia 1999
312 Pink Floyd 1965
\.
--
-- Data for Name: lied; Type: TABLE DATA; Schema: public; Owner: dbsadmin
--
COPY public.lied (id, track, titel) FROM stdin;
4711 1 Not That Kind
4711 2 I'm Outta Love
4711 3 Cowboys & Kisses
4712 1 Shine On You Crazy Diamond
4713 1 Paid my Dues
\.
--
-- Data for Name: tier; Type: TABLE DATA; Schema: public; Owner: dbsadmin
--
COPY public.tier (name, tierart, id) FROM stdin;
Schnubbel Kaninchen 42
Hektor Hund 7
Esmeralda Spinne 94
\.
--
-- Name: cd cd_pkey; Type: CONSTRAINT; Schema: public; Owner: dbsadmin
--
ALTER TABLE ONLY public.cd
ADD CONSTRAINT cd_pkey PRIMARY KEY (id);
--
-- Name: lied lied_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dbsadmin
--
ALTER TABLE ONLY public.lied
ADD CONSTRAINT lied_fkey FOREIGN KEY (id) REFERENCES public.cd(id);
--
-- Name: TABLE cd; Type: ACL; Schema: public; Owner: dbsadmin
--
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.cd TO dbs;
--
-- Name: TABLE kuenstler; Type: ACL; Schema: public; Owner: dbsadmin
--
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.kuenstler TO dbs;
--
-- Name: TABLE lied; Type: ACL; Schema: public; Owner: dbsadmin
--
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.lied TO dbs;
--
-- Name: TABLE cd_lieder; Type: ACL; Schema: public; Owner: dbsadmin
--
GRANT SELECT ON TABLE public.cd_lieder TO dbs;
--
-- Name: TABLE tier; Type: ACL; Schema: public; Owner: dbsadmin
--
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tier TO dbs;
--
-- PostgreSQL database dump complete
--
--
-- PostgreSQL database dump
--
-- Dumped from database version 15.10 (Debian 15.10-0+deb12u1)
-- Dumped by pg_dump version 15.10 (Debian 15.10-0+deb12u1)
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
ALTER TABLE ONLY public.lied DROP CONSTRAINT lied_fkey;
ALTER TABLE ONLY public.cd DROP CONSTRAINT cd_pkey;
DROP TABLE public.tier;
DROP VIEW public.cd_lieder;
DROP TABLE public.lied;
DROP TABLE public.kuenstler;
DROP TABLE public.cd;
SET default_tablespace = '';
SET default_table_access_method = heap;
--
-- Name: cd; Type: TABLE; Schema: public; Owner: dbsadmin
--
CREATE TABLE public.cd (
id integer NOT NULL,
albumtitel text,
interpret integer,
erscheinungsjahr integer
);
ALTER TABLE public.cd OWNER TO dbsadmin;
--
-- Name: kuenstler; Type: TABLE; Schema: public; Owner: dbsadmin
--
CREATE TABLE public.kuenstler (
id integer,
interpret text,
gruendungsjahr integer
);
ALTER TABLE public.kuenstler OWNER TO dbsadmin;
--
-- Name: lied; Type: TABLE; Schema: public; Owner: dbsadmin
--
CREATE TABLE public.lied (
id integer,
track integer,
titel text
);
ALTER TABLE public.lied OWNER TO dbsadmin;
--
-- Name: cd_lieder; Type: VIEW; Schema: public; Owner: dbsadmin
--
CREATE VIEW public.cd_lieder AS
SELECT c.id,
c.albumtitel,
k.gruendungsjahr,
c.erscheinungsjahr,
l.track,
l.titel
FROM ((public.cd c
JOIN public.kuenstler k ON ((c.interpret = k.id)))
JOIN public.lied l ON ((c.id = l.id)));
ALTER TABLE public.cd_lieder OWNER TO dbsadmin;
--
-- Name: tier; Type: TABLE; Schema: public; Owner: dbsadmin
--
CREATE TABLE public.tier (
name text,
tierart text,
id integer
);
ALTER TABLE public.tier OWNER TO dbsadmin;
--
-- Data for Name: cd; Type: TABLE DATA; Schema: public; Owner: dbsadmin
--
COPY public.cd (id, albumtitel, interpret, erscheinungsjahr) FROM stdin;
4712 Wish You Were Here 312 1975
4713 Freak of Nature 311 2001
4711 Not That Kind 311 2000
\.
--
-- Data for Name: kuenstler; Type: TABLE DATA; Schema: public; Owner: dbsadmin
--
COPY public.kuenstler (id, interpret, gruendungsjahr) FROM stdin;
311 Anastacia 1999
312 Pink Floyd 1965
\.
--
-- Data for Name: lied; Type: TABLE DATA; Schema: public; Owner: dbsadmin
--
COPY public.lied (id, track, titel) FROM stdin;
4711 1 Not That Kind
4711 2 I'm Outta Love
4711 3 Cowboys & Kisses
4712 1 Shine On You Crazy Diamond
4713 1 Paid my Dues
\.
--
-- Data for Name: tier; Type: TABLE DATA; Schema: public; Owner: dbsadmin
--
COPY public.tier (name, tierart, id) FROM stdin;
Schnubbel Kaninchen 42
Hektor Hund 7
Esmeralda Spinne 94
\.
--
-- Name: cd cd_pkey; Type: CONSTRAINT; Schema: public; Owner: dbsadmin
--
ALTER TABLE ONLY public.cd
ADD CONSTRAINT cd_pkey PRIMARY KEY (id);
--
-- Name: lied lied_fkey; Type: FK CONSTRAINT; Schema: public; Owner: dbsadmin
--
ALTER TABLE ONLY public.lied
ADD CONSTRAINT lied_fkey FOREIGN KEY (id) REFERENCES public.cd(id) ON DELETE CASCADE;
--
-- Name: TABLE cd; Type: ACL; Schema: public; Owner: dbsadmin
--
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.cd TO dbs;
--
-- Name: TABLE kuenstler; Type: ACL; Schema: public; Owner: dbsadmin
--
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.kuenstler TO dbs;
--
-- Name: TABLE lied; Type: ACL; Schema: public; Owner: dbsadmin
--
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.lied TO dbs;
--
-- Name: TABLE cd_lieder; Type: ACL; Schema: public; Owner: dbsadmin
--
GRANT SELECT ON TABLE public.cd_lieder TO dbs;
--
-- Name: TABLE tier; Type: ACL; Schema: public; Owner: dbsadmin
--
GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE public.tier TO dbs;
--
-- PostgreSQL database dump complete
--
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4711 | 2 | I'm Outta Love
4711 | 3 | Cowboys & Kisses
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
(5 Zeilen)
testdb=> update lied set track = -1 where id = 4711 and track = 3;
UPDATE 1
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4711 | 2 | I'm Outta Love
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
4711 | -1 | Cowboys & Kisses
(5 Zeilen)
testdb=> update lied set track = 3 where id = 4711 and track = 2;
UPDATE 1
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
4711 | -1 | Cowboys & Kisses
4711 | 3 | I'm Outta Love
(5 Zeilen)
testdb=> update lied set track = 2 where id = 4711 and track = -2;
UPDATE 0
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
4711 | -1 | Cowboys & Kisses
4711 | 3 | I'm Outta Love
(5 Zeilen)
testdb=> update lied set track = 2 where id = 4711 and track = -1;
UPDATE 1
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
4711 | 3 | I'm Outta Love
4711 | 2 | Cowboys & Kisses
(5 Zeilen)
testdb=>
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
4711 | 3 | I'm Outta Love
4711 | 2 | Cowboys & Kisses
(5 Zeilen)
testdb=> begin;
BEGIN
testdb=*> update lied set track = -1 where id = 4711 and track = 3;
UPDATE 1
testdb=*> update lied set track = 3 where id = 4711 and track = 2;
UPDATE 1
testdb=*> update lied set track = 2 where id = 4711 and track = -1;
UPDATE 1
testdb=*> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
4711 | 3 | Cowboys & Kisses
4711 | 2 | I'm Outta Love
(5 Zeilen)
testdb=*> commit;
COMMIT
testdb=>
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
4711 | 3 | I'm Outta Love
4711 | 2 | Cowboys & Kisses
(5 Zeilen)
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
4711 | 3 | Cowboys & Kisses
4711 | 2 | I'm Outta Love
(5 Zeilen)
testdb=> begin;
BEGIN
testdb=*> update lied set track = -1 where id = 4711 and track = 3;
UPDATE 1
testdb=*> update lied set track = 3 where id = 4711 and track = 2;
UPDATE 1
testdb=*> update lied set track = 3 where id = 4711 and track = 2;
UPDATE 0
testdb=*> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
4711 | -1 | Cowboys & Kisses
4711 | 3 | I'm Outta Love
(5 Zeilen)
testdb=*> rollback;
ROLLBACK
testdb=> select * from lied;
id | track | titel
------+-------+----------------------------
4711 | 1 | Not That Kind
4712 | 1 | Shine On You Crazy Diamond
4713 | 1 | Paid my Dues
4711 | 3 | Cowboys & Kisses
4711 | 2 | I'm Outta Love
(5 Zeilen)
testdb=>
../common/Zeichen_123.pdf
\ No newline at end of file
File added
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment