Python sqlite3.OperationalError: keine solche Tabelle:

7

Ich versuche, Daten über Schüler an einer Schule zu speichern. Ich habe ein paar Tische vorher gemacht, zum Beispiel für Passwörter und Lehrer, die ich später in einem Programm zusammenbringen werde.

Ich habe die create table-Funktion ziemlich genau aus einer dieser Funktionen kopiert und die Werte für die Informationen des Schülers geändert. Es funktioniert gut auf den anderen Programmen, aber ich bekomme immer:

%Vor%

Wenn ich versuche, eine Pupille zur Tabelle hinzuzufügen, tritt sie in der Zeile auf:

%Vor%

Ich schaue in den Ordner und es gibt eine Datei namens PupilPremiumTable.db und die Tabelle wurde bereits vorher erstellt, daher weiß ich nicht, warum es nicht funktioniert.

Hier ist ein Teil meines Codes, wenn Sie mehr brauchen, sagen Sie es mir so, wie ich schon sagte, es hat vorher funktioniert, also habe ich keine Ahnung, warum es nicht funktioniert oder gar nicht funktioniert:

%Vor%     
Ben 24.01.2015, 13:44
quelle

1 Antwort

22

Sie gehen davon aus, dass das aktuelle Arbeitsverzeichnis mit dem Verzeichnis identisch ist, in dem sich Ihr Skript befindet. Es ist keine Annahme, die Sie machen können. Ihr Skript öffnet eine neue -Datenbank in einem anderen Verzeichnis, das leer ist.

Verwenden Sie einen absoluten Pfad für Ihre Datenbankdatei. Sie können den absoluten Pfad Ihres Skripts zugrunde legen:

%Vor%

Sie können überprüfen, was das aktuelle Arbeitsverzeichnis mit os.getcwd() ist, wenn Sie möchte herausfinden, wo Sie stattdessen die neue Datenbankdatei öffnen; Sie möchten wahrscheinlich die extra Datei, die Sie dort erstellt haben, aufräumen.

    
Martijn Pieters 24.01.2015, 14:02
quelle

Tags und Links