最近用了python的sqlite库做数据库存取,在这里总结一下。晚上还有一篇很好的介绍:
http://zetcode.com/db/sqlitepythontutorial/。也可以作为参考。
sqlite的连接 sqlite连接分为两部,首先创建sqlite的连接,用于提交数据,然后创建一个游标,用于执行各类操作。典型的代码如下:
try: con = sqlite3.connect(dbpath) cur = con.cursor() cur.execute("blabla") con.commit() except Exception,e: print e finally: if con: con.close()
sqlite的执行
利用游标的execute函数执行sql语句。 查询:
cur.execute("select * from db where key = ?", (k, )) cur.fetchall()
修改:
cur.execute("update db set cont1 = ?, cont2 = ?, cont3 = ? where key = ? " \ ,(cont1, cont2, cont3, key,))
插入:
cur.execute("insert into db values(name=:who, age=:old)", {"who": "bla", "age": 50})
游标执行的sql语句都是以字符串形式给出的,python的sqlite库支持2种方式插入变量,可以用问号,或者用字典方式。千万不要看到是sql语句采用字符串形式,就用str1+str2来构造,这样会出现sql注入漏洞。