sicherlich gibt es haufenweise Beiträge dieser Art. Und ich entschuldige mich dafür, dass ich mich einfach zu einem neuerlichen Post dieser Art erdreiste. Aber ich möchte einfach eine Antwort zu meinem Problem finden. Dieses maltretiert mich seit ein paar Tagen und ich finde einfach keine Antwort.
Hier nun meine Fragestellung. Ich versuche Werte, ihres Zeichen Unicode (das könnt ihr mir wirklich glauben), in eine Tabelle mit dem folgenden Schema zu schreiben:
Code: Alles auswählen
CREATE TABLE bilder (id integer primary key autoincrement not null, name varchar(50), datum varchar(10) not null, zeit varchar(10) not null);
Zurück zum Thema.
Ich les jede Datei aus und erhalte halt den Namen der Datei, das Datum und die Uhrzeit. Folgendes Schnippsel erläutert das Schreiben:
Code: Alles auswählen
db = sqlite3.connect(sqlite_file)
cursor = db.cursor()
for i in range(0,len(filename),1):
timestamp = ()
timestamp = <Hier ist ne Funktion, die ein Tupel nach dem Format ('YY','MM','DD','HH','MM','SS') zurückgibt>
datum = "-".join(timestamp[0:3])
zeit = ":".join(timestamp[3:])
cursor.execute("""INSERT INTO bilder (name, datum, zeit) VALUES (?,?,?)""", (os.path.basename(filename[i]).lower(), unicode(datum), unicode(zeit)))
del datum, timestamp, zeit
db.commit
print db.total_changes
cursor.close()
db.close()
Um einfach mal zu prüfen, ob ich denn auch in der korrekten DB bin, hab ich den Namen der Tabelle verändert. Das wurde prompt mit einer entsprechenden Fehlermeldung bzw. Exception beantwortet.
Ich habe keinen Dunst, warum die Daten nicht im geringsten in die Tabelle geschrieben werden. Ich hab auch entsprechend dem PEP 249 das messages-Attribut für das Cursor und Connection-Objekt versucht zu lesen. Dummerweise ist das Attribut natürlich nicht vorhanden. Gibt es, mal als weitere Frage, ein Attribut, dass mir den aktuellen Status für das Cursor- unf Connection-Objekt ausgibt??
Hier noch nen paar Daten zur Umgebung:
OS: Arch
Python: python2-pysqlite 2.6.3-3, python2 2.7.6-1
SQLite: sqlite 3.8.3-1
Vielleicht habt ihr ja ne Meinung und seit nicht von meiner Fragestellung genervt.
Gruß und Danke
PS: Bitte hinerfragt nicht das Schema der Tabelle. Es ist einfach nur ein Beispiel. Sofern denn endlich mal der Schreibvorgang klappt, wird dieses angepasst.