年前涉及了Python调用SQLite的一些应用,一直没有时间写博客,今天准备写出来分享一下,不然再过段时间,自己就忘记了。哈哈~闲话说完,下面进入正题吧。
首先,我们需要知道几个问题:
1、在Python中是集成了SQLite数据库的,所以我们不需要安装任何的数据库或其他应用了,直接调用即可;
2、我的使用环境是:Python2.6 和 PyCharm2.0的IDE;
3、众所周知,使用SQLite数据库的话,视图管理软件可能不好找或不好用,不过这里我可以介绍一个:Firefox上的插件 —— sqlitemanager-0.6.8-all.xpi 。这个插件不亚于任何一款SQLite Admin,非常之好用。当然高手肯定都已经知道了,呵呵。
下面开始用代码说明简单的调用案例:
————————————————————————————————————————
__author__ = 'mvp_xuan'
import sqlite3 #import sqlite
###########Python & SqlLite 插入操作:#############
conn = sqlite3.connect("D:/testf.sqlite") #连接数据库,数据库文件通过firefox上的sqlitemanager手动构建
sql = "INSERT INTO %s VALUES('%s','%s')"% (tableName,tempArray01[0],tempArray01[1])
#以上是构建sql语句,其中"%s"是数据类型,双引号后"%"是将括号中的变量按物理顺序匹配到前面的数据类型中去
c = conn.cursor() #游标指向到待连接的数据库;类似与要将鼠标点到需要执行的数据库上的意思
c.execute(sql) #执行sql语句
conn.commit() #commit,执行完毕。这操作可以操作多条sql语句后做一次即可
###########Python & SqlLite 删除操作:#############
conn = sqlite3.connect("D:/testf.sqlite")
c = conn.cursor()
sql = "DELETE FROM TestTable01"#构建delete的sql语句,TestTable01为要删除的表名
c.execute(sql)
sql = "DELETE FROM TestTable02"#连接上数据库后,可以连续的构建sql语句并execute
c.execute(sql)
conn.commit()
###########Python & SqlLite 查询操作:#############
#这里我举了一个我应用中的三表联合查询的实例,“\”是python中的接行号
#查询是不需要commit的,最后一个for是打印查询的内容,其他应该不解释了吧
conn = sqlite3.connect("D:/testf.sqlite")
sql = "SELECT TestCase.ID,TestCase.Subject,ReportTestCase.State,TimeList.ePCPrintState\
FROM TestCase,ReportTestCase,TimeList\
WHERE TestCase.ID = ReportTestCase.ID AND TestCase.Subject = TimeList.Subject"
for i in conn.execute(sql):
MERGE_ALL_DATA_ARRAY.append(i)
————————————————————————————————————————