これをpythonインタープリターで実行するたびに、新しい値が書き込まれます。例えば:
name = ben
age = 10
phone = 42045042
10回実行すると。データベースに 10 個の重複があります。簡単に修正できることはわかっていますが、これに何時間も取り組んできたので、わかりません。
conn = sqlite3.connect('addressbook.db')
cur=conn.cursor()
conn.execute('''
CREATE TABLE IF NOT EXISTS people(name TEXT,
age TEXT, phone TEXT, fblink TEXT)''')
conn.execute("INSERT OR REPLACE INTO people values (?, ?, ?, ?)", ben.displayPerson())
cursor = conn.execute("SELECT name, age, phone, fblink from people")
for row in cursor:
print "NAME = ", row[0]
print "AGE = ", row[1]
print "PHONE = ", row[2]
print "FACEBOOK LINK = ", row[3], "\n"
cur.close()
conn.commit()
conn.close()