python在2.5版以后,就自带了sqlite3模块,直接import即可。
模块可用后,就可以实现连接sqlite数据库的功能。sqlite3数据库与mysql不同,它每一个库叫做一个文件,连接的时候,库名即文件名,库内的表则操作方法与mysql相同,或许支持的sql语句会有一些差异。
我根据连接mysql的操作方法的包装,改写成了这个sqlite数据库连接模块。附件有这个源码。
#coding=gbk
import os,sys,string
import sqlite3
import traceback
class SQLObj(object):
def __init__(self, db = 'youmoney'):
self.db_name = db
self.connected = 0
self.cur = None # 指针对象
self.conn = None # 连接对象
self._connect()
def _connect(self):
try:
#print "connect to ", self.db_name
self.conn = sqlite3.connect(self.db_name)
self.cur = self.conn.cursor()
self.connected = 1
except:
traceback.print_exc()
self.connected = 0
@property
def is_connected(self):
return self.connected != 0
def _check_alive(self):
if not self.is_connected:
self._connect()
if not self.is_connected:
raise "Can't connect to sqlite3"
#直接提取方法
def query(self, sql, warning=1):
self._check_alive()
try:
cur = self.conn.cursor()
cur.execute(sql)
res = cur.fetchall()
cur.close()
except:
if warning:
traceback.print_exc()
return None
return res
#特殊的提取方法,形成字典返回
def dquery(self, sql, warning=1):
self._check_alive()
try:
cur = self.conn.cursor()
cur.execute(sql)
des = cur.description #获取字段描述
res = cur.fetchall() #获取字段内容
ret = []
if des:
names = [x[0] for x in des] #从des中提取每个元素(列表)的第一个元素(字符串)
for line in res:
ret.append(dict(zip(names, line))) #dict是形成字典的工厂函数,zip用于多个列表循环(name, line是两个列表)
else:
ret = res
cur.close()
except:
if warning:
traceback.print_exc()
return None
return ret
def execute(self, sql, warning=1):
self._check_alive()
try:
cur = self.conn.cursor()
rows = cur.execute(sql)
self.conn.commit()
cur.close()
return rows
except:
if warning:
traceback.print_exc()
return -1
def close(self):
if self.connected == 0:
return
try:
self.cur.close()
self.conn.close()
self.connected = 0
except:
pass
def __del__(self):
self.close()
def _lbsql_test_sqlite3():
db = SQLObj(db = "youmoney.db")
lists = db.dquery("select * from capital")
for l in lists:
for k, v in l.items():
print "%s: %s" %(k, v),
break
break
if __name__ == "__main__":
_lbsql_test_sqlite3()
分享到:
相关推荐
Python的sqlite3模块提供了一系列操作数据库的接口,允许Python程序通过简单的API调用来执行SQL语句,从而实现数据库的操作。这些操作不仅包括基本的增删改查,还可以进行复杂的查询和事务管理。在Python中使用...
aiosqlite 为 sqlite 数据库提供了一个友好的异步...它复制了标准sqlite3模块,但具有所有标准连接和游标方法的异步版本,以及用于自动关闭连接和游标的上下文管理器: 更多详情、使用方法,请下载后阅读README.md文件
在Python中使用SQLite3,首先要创建一个数据库连接对象。例如: ```python import sqlite3 conn = sqlite3.connect('mysql_person.db') ``` 这里的`connect()`函数用于连接到数据库,如果指定的数据库文件不存在,它...
在Python中,我们可以使用sqlite3模块来与SQLite数据库进行交互。`yc.db`可能包含了一些预先创建的表和数据,这些数据将被我们的Python程序访问和操作。 接下来是`main.py`,这是主程序文件。在这个文件中,我们...
首先,你需要导入Python的sqlite3模块,它是Python标准库的一部分,提供了与SQLite数据库交互的接口。在Python环境中,输入以下代码: ```python import sqlite3 ``` 接下来,我们创建一个连接到SQLite数据库的...
下面将详细介绍sqlite3模块的使用方法以及相关的知识点。 1. 安装与导入: Python的sqlite3模块通常在标准安装中就已经包含了,无需额外安装。在Python环境中,可以直接通过`import sqlite3`来引入这个模块。 2. ...
在Python中,使用`sqlite3.connect()`函数创建到SQLite数据库的连接。数据库文件名可以是任意字符串,但通常以`.db`为扩展名。例如: ```python import sqlite3 conn = sqlite3.connect('example.db') ``` 2. ...
很多年前写的一个sqlite通用类模块。...该类的使用方法见sqldb.h,该头文件有具体的使用示例。 其中 libPublic.h没上传,里面只用到数据类型的定义(如BOOL,类printf函数 等,可在各平台编译自行补上)。
sqlite_utils库是David Beazley开发的一个Python模块,主要面向Python 3.x版本。该库的核心特性在于它提供了一系列高级API,使得创建表、插入数据、执行查询以及对数据库进行各种操作变得极其便捷。其1.2.2版本的whl...
在Python中使用SQLite通常不需要额外安装,因为Python标准库中已经包含了`sqlite3`模块,它是Python官方支持的SQLite接口。对于较旧的Python版本,可能需要从官方网站下载并安装PySqlite。 2. **创建/打开数据库**...
本项目标题"xlrd_pythonsqlite_pythonexcel_"揭示了使用Python的两个关键库:`xlrd`用于读取Excel文件,`sqlite3`用于与SQLite数据库交互。以下是对这些知识点的详细说明: 1. **xlrd库**: - `xlrd`是Python的一...
`sqlite3`库提供了简洁的API,使得在Python程序中创建、打开、查询和管理SQLite数据库变得非常容易,特别适合于轻量级的桌面应用或移动应用。 结合这些库,开发者可以构建一个强大的数据处理系统。例如,使用`json`...
#### 二、Python中的SQLite模块 Python的标准库自2.5版本起内置了`sqlite3`模块,使得在Python中使用SQLite数据库变得非常方便。此模块遵循Python数据库API v2.0规范,提供了统一的操作接口。 #### 三、使用SQLite...
然后,他们可以通过导入`mysql_to_sqlite3`模块,在Python代码中调用其提供的函数和方法来执行数据库迁移任务。 总之,`mysql_to_sqlite3`是一个方便的Python工具,用于在MySQL和SQLite3之间进行数据迁移。它简化了...
Python提供了sqlite3模块来与SQLite数据库进行交互,使得Python开发者可以轻松地处理数据存储和查询任务。 首先,我们需要了解如何安装和导入Python的sqlite3模块。在大多数Python环境中,sqlite3是默认预装的,...
Python中的sqlite3模块是用于与SQLite数据库交互的标准库,它提供了简单易用的API来执行SQL操作。SQLite是一个轻量级、嵌入式的数据库系统,适用于小型应用或测试环境,无需独立服务器进程,可以直接在应用程序中...
根据提供的文件内容,这里介绍的是Python编程语言中使用sqlite模块进行...以上知识点涵盖了Python中使用sqlite模块进行数据库操作的基本方法和常见操作,为开发者提供了利用Python对SQLite数据库进行操作的理论基础。
Windows平台使用Python连接sqlite3数据库的方法: 在Windows平台上使用Python语言连接sqlite3数据库,是一种轻量级的数据库解决方案,适用于小型应用程序或演示项目,尤其适合那些不需要传统数据库服务器的场景。...
本篇文章将深入解析如何使用Python的sqlite3模块进行查询操作。 首先,了解如何获取SQLite数据库中的表信息。SQLite提供了一个名为`sqlite_master`的特殊表,存储了数据库的元数据。你可以通过查询此表来获得所有...