# -*- coding: utf-8 -*-
import sqlite3
from contextlib import closing
class Dbs:
db = 'database.db'
utable = 'create table users (id int, name varchar(64), age int, gender varchar(32))'
def __init__(self):
self.conn = sqlite3.connect(Dbs.db)
self.c = self.conn.cursur()
def __del__(self):
self.commit()
self.close()
def close(self):
self.conn.close()
def newtable(self):
self.sql( utable )
def commit(self):
self.conn.commit()
def name(self,id):
rec = self.sql("select name from users where id = ?", (id,))
if( rec == None ):
return None
elif( len(rec) == 0 ):
return None
return rec[0]
def find(self,Id):
sql = "select * from users where id = ?"
return self.sql(sql, (id,))
def add(self,val):
sql = "insert into users (id, name, age, gender) values (?,?,?,?)"
self.sql(sql, val)
def update(self, id, f, val):
sql = "update from users where id =? set ? = ?"
self.sql(sql, (id, f, val))
def adduser(self):
sql = 'insert into users (id, name, age, gender) values (?,?,?,?)'
user = (1, 'Taro', 20, 'male')
self.sql(sql, user)
def addusers(self):
sql = 'insert into users (id, name, age, gender) values (?,?,?,?)'
users = [ (2, 'Shota', 54, 'male'), (3, 'Nana', 40, 'female'), (4, 'Tooru', 78, 'male'), (5, 'Saki', 31, 'female') ]
self.sqlm(sql, users)
def seluser(self):
sql = 'select * from users'
for row in self.sql(sql):
print(row)
def sql(self, sql, param=None):
return self.c.execute(sql, param)
def sqlm(self, sql, param=None):
return self.c.executemany(sql, param)
def test():
self.newtable()
self.adduser()
self.addusers()
self.commit()
self.seluser()
self.close()
参考
https://qiita.com/mas9612/items/a881e9f14d20ee1c0703