Ich habe alles gemäß dem Vorschlag von Voges geändert, er findet y und w, sie haben den richtigen Inhalt,aber jetzt gibts einen neuen Fehler, liegt es daran, das er das @ nicht mag?
Fehler:
Traceback (most recent call last):
File "C:\Python22\Datenbank.py", line 23, in ?
readin()
File "C:\Python22\Datenbank.py", line 18, in readin
cursor.execute("insert into adressen values (%s, %s, %s, %s)" %(y[-4], y[-3],y[-2], y[-1]))
File "C:\Python22\Lib\site-packages\MySQLdb\cursors.py", line 61, in execute
r = self._query(query)
File "C:\Python22\Lib\site-packages\MySQLdb\cursors.py", line 168, in _query
rowcount = self._BaseCursor__do_query(q)
File "C:\Python22\Lib\site-packages\MySQLdb\cursors.py", line 112, in __do_query
db.query(q)
ProgrammingError: (1064, "You have an error in your SQL syntax near '@mail.de\n)' at line 1")
Das Dokument, das ich zum testen verwendete(das andere existiert noch nicht) hat folgenden Inhalt:
2///Test///Testadresse///
Testmail@mail.de
Falls die Datenbank interessant ist:
MySQl Datenbank
Tabelle mit Werten
ID Integerzahl die nicht null ist,
Name bis zu 255 Zeichen beliebiger text,
Adresse, siehe oben,
E-mail, siehe auch oben
Und nocheinmal, der aktuelle Code.
Code: Alles auswählen
from MySQLdb import *
from tkFileDialog import *
from string import *
# Die Datenbank und die Tabelle heissen adressen
def readin():
print "Geben sie den Pfad an :"
Dat = askopenfilename()
dat = file(Dat, "a+")
for w in dat.readlines():
y = w.split( "///")
print y
print w
conn = connect(db="adressen")
cursor = conn.cursor()
cursor.execute("select * from adressen")
erg = cursor.fetchall()
cursor.execute("insert into adressen values (%s, %s, %s, %s)" %(y[-4], y[-3],y[-2], y[-1]))
erg = cursor.fetchall()
print erg
readin()
So mehr das wars,
Hoffentlich könnt ihr was damit anfangen, danke für eure Mühe
Glamdring
Dies ist ein Platzhalter, er steht am Ende jeder meiner Beiträge! Erst wenn ich einen vernünftigen Text gefunden habe wird sich das ändern!