ich bin neu hier, und habe angefangen im Selbstudium ein bisschen mit Python zu experimentieren. Hab früher ein etwas mit PHP und MySQL hantiert.
So zum üben versuche ich mir ein Haushaltsbuch zu basteln.
Um meinen Code zu testen lösche ich ab und zu die Datenbank Datei, und erzeuge mir mit folgendem Skript eine neue, leere Datenbank.
Code: Alles auswählen
import sqlite3
print(sqlite3.version)
print('-------------------------------------')
print(sqlite3.sqlite_version)
connection = sqlite3.connect("test.db")
cursor = connection.cursor()
cursor.execute("""CREATE TABLE konten (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, nummer TEXT, art INTEGER, unter INTEGER)""")
cursor.execute("""CREATE TABLE kontoarten (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT)""")
cursor.execute("CREATE TABLE buchungen (id INTEGER PRIMARY KEY AUTOINCREMENT, auftragskonto TEXT, partner TEXT, partnerkonto TEXT, buchungstext TEXT, verwendungszweck TEXT, betrag REAL, datum TEXT, kommentar TEXT)")
connection.commit()
connection.close()
Code: Alles auswählen
====================== RESTART: H:\Python\Habufnath\Datenbank_erstellen.py =====================
2.6.0
-------------------------------------
3.37.2
Traceback (most recent call last):
File "H:\Python\Habufnath\Datenbank_erstellen.py", line 8, in <module>
cursor.execute("""CREATE TABLE konten (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, nummer TEXT, art INTEGER, unter INTEGER)""")
sqlite3.DatabaseError: file is not a database
Ich habe schon ein bisschen gegoogelt, da gab es einen Tip die Dateiendung weg zu lassen, das brachte nix.
Dann lasse ich mir noch die sqlite3.version anzeigen, das bringt mir aber als Laien nichts.
Hat jemand eine Ahnung was hier falsch läuft?
Gruß KIKA.