Zoo connect

This commit is contained in:
DotNaos 2025-05-18 19:12:17 +02:00
parent 45a9a29083
commit 6a53be487b
2 changed files with 109 additions and 103 deletions

View File

@ -32,7 +32,7 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": 16, "execution_count": 1,
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
@ -42,7 +42,7 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": 17, "execution_count": 2,
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
@ -62,7 +62,7 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": 18, "execution_count": 3,
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
@ -93,7 +93,7 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": 19, "execution_count": 4,
"metadata": {}, "metadata": {},
"outputs": [ "outputs": [
{ {
@ -150,7 +150,7 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": 20, "execution_count": 5,
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
@ -175,7 +175,7 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": 21, "execution_count": 6,
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
@ -199,7 +199,7 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": 22, "execution_count": 7,
"metadata": {}, "metadata": {},
"outputs": [ "outputs": [
{ {
@ -213,110 +213,110 @@
"Gesamt: 40\n", "Gesamt: 40\n",
"Platzanzahl ist konsistent!\n", "Platzanzahl ist konsistent!\n",
"--------------------\n", "--------------------\n",
"User 25 hat sich für Session 3 angemeldet\n", "User 89 hat sich für Session 2 angemeldet\n",
"User 25 hat sich für Session 4 angemeldet\n", "User 6 hat sich für Session 4 angemeldet\n",
"User 31 hat sich für Session 8 angemeldet\n", "User 57 hat sich für Session 3 angemeldet\n",
"User 91 hat sich für Session 2 angemeldet\n", "User 78 hat sich für Session 2 angemeldet\n",
"User 66 hat sich für Session 1 angemeldet\n", "User 61 hat sich für Session 7 angemeldet\n",
"User 61 hat sich für Session 3 angemeldet\n", "User 16 hat sich für Session 4 angemeldet\n",
"User 53 hat sich für Session 7 angemeldet\n", "User 95 hat sich für Session 2 angemeldet\n",
"User 70 hat sich für Session 4 angemeldet\n", "User 73 hat sich für Session 7 angemeldet\n",
"User 98 hat sich für Session 3 angemeldet\n", "User 85 hat sich für Session 3 angemeldet\n",
"User 42 hat sich für Session 5 angemeldet\n", "User 61 hat sich für Session 8 angemeldet\n",
"User 22 hat sich für Session 7 angemeldet\n", "User 81 hat sich für Session 1 angemeldet\n",
"User 71 hat sich für Session 3 angemeldet\n", "User 10 hat sich für Session 3 angemeldet\n",
"User 50 hat sich für Session 2 angemeldet\n", "User 100 hat sich für Session 8 angemeldet\n",
"User 26 hat sich für Session 1 angemeldet\n", "User 68 hat sich für Session 2 angemeldet\n",
"User 53 hat sich für Session 5 angemeldet\n", "Session 2 ist ausgebucht\n",
"User 54 hat sich für Session 4 angemeldet\n", "User 48 hat sich für Session 3 angemeldet\n",
"User 72 hat sich für Session 1 angemeldet\n", "User 56 hat sich für Session 6 angemeldet\n",
"User 3 hat sich für Session 3 angemeldet\n", "Session 2 ist ausgebucht\n",
"User 95 hat sich für Session 7 angemeldet\n", "User 41 hat sich für Session 7 angemeldet\n",
"User 83 hat sich für Session 4 angemeldet\n", "User 12 hat sich für Session 6 angemeldet\n",
"User 90 hat sich für Session 4 angemeldet\n",
"User 26 hat sich für Session 5 angemeldet\n",
"User 1 hat sich für Session 8 angemeldet\n",
"Session 2 ist ausgebucht\n",
"User 100 hat sich für Session 6 angemeldet\n",
"Session 8 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"User 9 hat sich für Session 4 angemeldet\n",
"User 19 hat sich für Session 6 angemeldet\n",
"User 21 hat sich für Session 1 angemeldet\n",
"Session 2 ist ausgebucht\n",
"User 70 hat sich für Session 5 angemeldet\n",
"User 95 hat sich für Session 3 angemeldet\n",
"User 16 hat sich für Session 6 angemeldet\n",
"User 11 hat sich für Session 5 angemeldet\n",
"User 53 hat sich für Session 4 angemeldet\n",
"User 90 hat sich für Session 1 angemeldet\n",
"User 3 hat sich für Session 7 angemeldet\n",
"User 4 hat sich für Session 1 angemeldet\n",
"User 25 hat sich für Session 6 angemeldet\n",
"User 20 hat sich für Session 5 angemeldet\n",
"User 66 hat sich für Session 7 angemeldet\n",
"User 48 hat sich für Session 6 angemeldet\n",
"Session 5 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"User 88 hat sich für Session 6 angemeldet\n",
"Session 8 ist ausgebucht\n",
"Session 5 ist ausgebucht\n",
"Session 3 ist ausgebucht\n", "Session 3 ist ausgebucht\n",
"User 90 hat sich für Session 7 angemeldet\n", "User 99 hat sich für Session 6 angemeldet\n",
"User 78 hat sich für Session 1 angemeldet\n",
"User 14 hat sich für Session 6 angemeldet\n",
"User 84 hat sich für Session 7 angemeldet\n",
"Session 1 ist ausgebucht\n", "Session 1 ist ausgebucht\n",
"User 75 hat sich für Session 8 angemeldet\n",
"Session 7 ist ausgebucht\n",
"Session 3 ist ausgebucht\n", "Session 3 ist ausgebucht\n",
"Session 7 ist ausgebucht\n", "Session 8 ist ausgebucht\n",
"User 97 hat sich für Session 4 angemeldet\n", "User 63 hat sich für Session 6 angemeldet\n",
"User 93 hat sich für Session 6 angemeldet\n",
"User 28 hat sich für Session 2 angemeldet\n",
"User 92 hat sich für Session 8 angemeldet\n",
"User 88 hat sich für Session 5 angemeldet\n",
"Session 7 ist ausgebucht\n",
"User 64 hat sich für Session 2 angemeldet\n",
"User 14 hat sich für Session 6 angemeldet\n",
"Session 7 ist ausgebucht\n",
"User 74 hat sich für Session 5 angemeldet\n",
"Session 3 ist ausgebucht\n", "Session 3 ist ausgebucht\n",
"Session 6 ist ausgebucht\n",
"Session 1 ist ausgebucht\n", "Session 1 ist ausgebucht\n",
"Session 1 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 3 ist ausgebucht\n",
"Session 5 ist ausgebucht\n",
"Session 1 ist ausgebucht\n",
"Session 4 ist ausgebucht\n",
"Session 3 ist ausgebucht\n",
"Session 5 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 4 ist ausgebucht\n",
"Session 7 ist ausgebucht\n", "Session 7 ist ausgebucht\n",
"Session 6 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 6 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"Session 7 ist ausgebucht\n",
"Session 3 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 5 ist ausgebucht\n",
"Session 6 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 2 ist ausgebucht\n", "Session 2 ist ausgebucht\n",
"Session 7 ist ausgebucht\n", "Session 7 ist ausgebucht\n",
"Session 5 ist ausgebucht\n", "Session 2 ist ausgebucht\n",
"Session 4 ist ausgebucht\n",
"Session 1 ist ausgebucht\n",
"Session 7 ist ausgebucht\n",
"Session 7 ist ausgebucht\n",
"Session 4 ist ausgebucht\n", "Session 4 ist ausgebucht\n",
"Session 3 ist ausgebucht\n", "Session 3 ist ausgebucht\n",
"Session 2 ist ausgebucht\n", "Session 2 ist ausgebucht\n",
"Session 7 ist ausgebucht\n", "Session 7 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"Session 1 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 5 ist ausgebucht\n",
"Session 3 ist ausgebucht\n", "Session 3 ist ausgebucht\n",
"Session 7 ist ausgebucht\n", "Session 7 ist ausgebucht\n",
"Session 3 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"Session 3 ist ausgebucht\n",
"User 49 hat sich für Session 6 angemeldet\n",
"Session 3 ist ausgebucht\n",
"Session 1 ist ausgebucht\n",
"User 23 hat sich für Session 6 angemeldet\n",
"Session 2 ist ausgebucht\n",
"Session 1 ist ausgebucht\n", "Session 1 ist ausgebucht\n",
"Session 7 ist ausgebucht\n", "Session 7 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"Session 5 ist ausgebucht\n",
"User 9 hat sich für Session 6 angemeldet\n",
"Session 3 ist ausgebucht\n", "Session 3 ist ausgebucht\n",
"Session 5 ist ausgebucht\n", "Session 3 ist ausgebucht\n",
"Session 4 ist ausgebucht\n", "Session 4 ist ausgebucht\n",
"Session 7 ist ausgebucht\n", "Session 7 ist ausgebucht\n",
"User 13 hat sich für Session 6 angemeldet\n", "Session 6 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 1 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 1 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"Session 7 ist ausgebucht\n",
"Session 5 ist ausgebucht\n",
"User 73 hat sich für Session 6 angemeldet\n",
"Session 8 ist ausgebucht\n",
"Session 8 ist ausgebucht\n",
"Session 3 ist ausgebucht\n",
"Session 1 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 4 ist ausgebucht\n",
"Session 5 ist ausgebucht\n",
"Session 4 ist ausgebucht\n",
"Session 3 ist ausgebucht\n",
"Session 2 ist ausgebucht\n",
"Session 1 ist ausgebucht\n",
"Session 7 ist ausgebucht\n",
"Session 7 ist ausgebucht\n",
"Session 5 ist ausgebucht\n",
"Nach dem Lasttest:\n", "Nach dem Lasttest:\n",
"--------------------\n", "--------------------\n",
"Freie Plätze: 2\n", "Freie Plätze: 0\n",
"Belegte Plätze: 38\n", "Belegte Plätze: 40\n",
"Gesamt: 40\n", "Gesamt: 40\n",
"Platzanzahl ist konsistent!\n", "Platzanzahl ist konsistent!\n",
"--------------------\n" "--------------------\n"
@ -383,7 +383,7 @@
"name": "python", "name": "python",
"nbconvert_exporter": "python", "nbconvert_exporter": "python",
"pygments_lexer": "ipython3", "pygments_lexer": "ipython3",
"version": "3.13.3" "version": "3.13.2"
} }
}, },
"nbformat": 4, "nbformat": 4,

View File

@ -13,7 +13,7 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": null, "execution_count": 1,
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
@ -23,19 +23,26 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": null, "execution_count": 3,
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"# Verbindung aufbauen\n", "# Verbindung aufbauen\n",
"# TODO: hier müssen Ihre Verbindungsdaten eingetragen werden\n", "# TODO: hier müssen Ihre Verbindungsdaten eingetragen werden\n",
"# TODO: ggf. müssen Sie auch den Namen der Datenbank anpassen oder eine leere Datenbank 'zoo' anlegen\n", "# TODO: ggf. müssen Sie auch den Namen der Datenbank anpassen oder eine leere Datenbank 'zoo' anlegen\n",
"conn = psycopg2.connect(\"dbname=zoo user=... password=...\")" "\n",
"conn = psycopg2.connect(\n",
" host=\"localhost\",\n",
" port=5432,\n",
" dbname=\"postgres\",\n",
" user=\"postgres\",\n",
" password=\"postgres\",\n",
")\n"
] ]
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": null, "execution_count": 4,
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
@ -172,7 +179,7 @@
" zookeeper = relationship(\"Zookeeper\", back_populates=\"animals\")\n", " zookeeper = relationship(\"Zookeeper\", back_populates=\"animals\")\n",
"\n", "\n",
"# TODO: Verbingung zur Datenbank herstellen\n", "# TODO: Verbingung zur Datenbank herstellen\n",
"engine = create_engine('postgresql://IHR_POSTGRES_USER:IHR_POSTGRES_PASSWORD/zoo') " "engine = create_engine('postgresql://IHR_POSTGRES_USER:IHR_POSTGRES_PASSWORD/zoo')"
] ]
}, },
{ {
@ -206,7 +213,7 @@
" jane = ...\n", " jane = ...\n",
"\n", "\n",
" session.add(...)\n", " session.add(...)\n",
" \n", "\n",
" session.commit()\n" " session.commit()\n"
] ]
}, },
@ -230,7 +237,7 @@
"# TODO: 3 Elefanten anlegen, die John betreut\n", "# TODO: 3 Elefanten anlegen, die John betreut\n",
"with Session(engine) as session:\n", "with Session(engine) as session:\n",
" ...\n", " ...\n",
" \n", "\n",
"# TODO: 2 Giraffen anlegen, die Jane betreut\n", "# TODO: 2 Giraffen anlegen, die Jane betreut\n",
"with Session(engine) as session:\n", "with Session(engine) as session:\n",
" ..." " ..."
@ -247,21 +254,20 @@
" ...\n", " ...\n",
"\n", "\n",
"# Beispielausgabe:\n", "# Beispielausgabe:\n",
"# \n", "#\n",
"# ----------------------------------------\n", "# ----------------------------------------\n",
"# | Babar | Elephant | John Doe |\n", "# | Babar | Elephant | John Doe |\n",
"# | Dumbo | Elephant | John Doe |\n", "# | Dumbo | Elephant | John Doe |\n",
"# | Hathi | Elephant | John Doe |\n", "# | Hathi | Elephant | John Doe |\n",
"# | Melman | Giraffe | Jane Doe |\n", "# | Melman | Giraffe | Jane Doe |\n",
"# | Gloria | Giraffe | Jane Doe |\n", "# | Gloria | Giraffe | Jane Doe |\n",
"# ----------------------------------------\n", "# ----------------------------------------\n"
"\n"
] ]
} }
], ],
"metadata": { "metadata": {
"kernelspec": { "kernelspec": {
"display_name": "base", "display_name": "code (3.13.2)",
"language": "python", "language": "python",
"name": "python3" "name": "python3"
}, },
@ -275,7 +281,7 @@
"name": "python", "name": "python",
"nbconvert_exporter": "python", "nbconvert_exporter": "python",
"pygments_lexer": "ipython3", "pygments_lexer": "ipython3",
"version": "3.11.7" "version": "3.13.3"
} }
}, },
"nbformat": 4, "nbformat": 4,