4 DATABASE_NAME = 'contacts.db'
8 def __init__(self, basedir):
9 self._path = os.path.join(basedir, DATABASE_NAME)
11 if not os.path.exists(self._path):
14 self.conn = sqlite3.connect(self._path)
17 """Creates new databse."""
19 self.conn = sqlite3.connect(self._path)
20 self.conn.execute("""CREATE TABLE data (user_id int, field_id int, \
22 self.conn.execute("""CREATE TABLE field (id int primary key, name str)""")
23 self.conn.execute("""CREATE TABLE relation (data_id int, \
25 self.conn.execute("""CREATE TABLE struct (id int, name str, \
30 """Closes connection with database."""
35 def update_field(self, fname):
36 """Adds new field to database."""
38 fields = self.conn.execute("""SELECT name from field""").fetchall()
39 if not fname in fields:
40 self.conn.execute("""INSERT INTO field values((SELECT max(id)
41 FROM field)+1, ?)""", (fname,))
44 if __name__ == "__main__":
46 db.update_field('test')