Skip to content
Snippets Groups Projects

ferdig

Merged Sander Skogh Linnerud requested to merge BrukerhistorieC into main
3 files
+ 29
14
Compare changes
  • Side-by-side
  • Inline
Files
3
+ 25
12
@@ -3,6 +3,7 @@ import sqlite3
con = sqlite3.connect("db1.db")
cursor = con.cursor()
def printStasjoner():
cursor.execute("SELECT StasjonsNavn FROM Jernbanestasjon")
stasjoner = cursor.fetchall()
@@ -11,24 +12,29 @@ def printStasjoner():
for stasjon in stasjoner:
print(stasjon[0])
def printRuter(brukerStasjon, brukerDag):
query = '''
SELECT T.Ankomsstid, T.Avgangsstid, T.Ukedag, T.Startstasjon, T.Sluttstasjon
SELECT T.Ankomsstid, T.Avgangsstid, TB.Ukedag, T.Startstasjon, T.Sluttstasjon
FROM GaarInnom G, Togrute T
INNER JOIN Jernbanestasjon J ON G.Stasjonsnavn = J.Stasjonsnavn
WHERE J.Stasjonsnavn = ? AND T.TogruteID = G.TogruteID AND T.Ukedag = ?
INNER JOIN TogruteTabell TB ON TB.TogruteID = G.TogruteID
WHERE J.Stasjonsnavn = ? AND T.TogruteID = G.TogruteID AND TB.Ukedag = ?
UNION
SELECT T.Ankomsstid, T.Avgangsstid, T.Ukedag, T.Startstasjon, T.Sluttstasjon
SELECT T.Ankomsstid, T.Avgangsstid, TB.Ukedag, T.Startstasjon, T.Sluttstasjon
FROM Togrute T
INNER JOIN Jernbanestasjon J ON T.Startstasjon = J.StasjonsNavn OR T.Sluttstasjon = J.StasjonsNavn
WHERE J.StasjonsNavn = ? AND T.Ukedag = ?
INNER JOIN TogruteTabell TB ON TB.TogruteID = T.TogruteID
WHERE J.StasjonsNavn = ? AND TB.Ukedag = ?
'''
cursor.execute(query, (brukerStasjon, brukerDag.capitalize(), brukerStasjon, brukerDag.capitalize()))
cursor.execute(query, (brukerStasjon, brukerDag.capitalize(),
brukerStasjon, brukerDag.capitalize()))
rows = cursor.fetchall()
return rows
def checkStasjon(brukerStasjon):
query = "SELECT Stasjonsnavn FROM Jernbanestasjon WHERE Stasjonsnavn = ?"
cursor.execute(query, (brukerStasjon,))
@@ -41,22 +47,26 @@ def checkStasjon(brukerStasjon):
def checkRuter(brukerStasjon, brukerDag):
query = '''
SELECT G.TogruteID, T.Ukedag
SELECT G.TogruteID, TB.Ukedag
FROM GaarInnom G, Togrute T
INNER JOIN Jernbanestasjon J ON G.Stasjonsnavn = J.Stasjonsnavn
WHERE J.Stasjonsnavn = ? AND T.TogruteID = G.TogruteID AND T.Ukedag = ?
INNER JOIN TogruteTabell TB ON TB.TogruteID = G.TogruteID
WHERE J.Stasjonsnavn = ? AND T.TogruteID = G.TogruteID AND TB.Ukedag = ?
UNION
SELECT T.TogruteID, T.Ukedag
SELECT T.TogruteID, TB.Ukedag
FROM Togrute T
INNER JOIN Jernbanestasjon J ON T.Startstasjon = J.StasjonsNavn OR T.Sluttstasjon = J.StasjonsNavn
WHERE J.StasjonsNavn = ? AND T.Ukedag = ?
INNER JOIN TogruteTabell TB ON TB.TogruteID = T.TogruteID
WHERE J.StasjonsNavn = ? AND TB.Ukedag = ?
'''
cursor.execute(query, (brukerStasjon, brukerDag.capitalize(), brukerStasjon, brukerDag.capitalize()))
cursor.execute(query, (brukerStasjon, brukerDag.capitalize(),
brukerStasjon, brukerDag.capitalize()))
rows = cursor.fetchall()
return rows
def run():
while True:
printStasjoner()
@@ -68,13 +78,16 @@ def run():
while True:
brukerDag = input("\nSKRIV INN EN UKEDAG: ")
if len(checkRuter(brukerStasjon, brukerDag)) == 0:
print("\n" + "Ingen togruter går innom " + brukerStasjon + " på en " + brukerDag + ".")
print("\n" + "Ingen togruter går innom " +
brukerStasjon + " på en " + brukerDag + ".")
else:
print("\nDette er togrutene som går innom " + brukerStasjon + " på en " + brukerDag + ".")
print("\nDette er togrutene som går innom " +
brukerStasjon + " på en " + brukerDag + ".")
for rute in printRuter(brukerStasjon, brukerDag):
print(rute)
break
run()
con.close()
Loading