Python之Sqlite3数据库基本操作 [数据库教程]

database

在一些小的应用中,难免会用到数据库,Sqlite数据库以其小巧轻便,无需安装,移植性好著称,本文主要以一个简单的小例子,简述Python在Sqlite数据库方面的应用,仅供学习分享使用,如有不足之处,还请指正。

涉及知识点

  1. sqlite3是Python集成的内置类库,提供Python操作sqlite3的相关接口。
  2. sqlite3.connect(dbfile) 创建数据库连接,返回一个连接对象
  3. conn.cursor() 创建游标对象,通过返回的cursor对象,执行相应的SQL语句。
  4. cur.execute(sql, *args) 执行语句
  5. conn.commit() 提交执行的结果到数据库
  6. conn.rollback() 回退执行的结果
  7. cur.close() 关闭cursor对象
  8. conn.close() 关闭连接对象

基础操作代码

关于Python操作sqlite3的相关核心代码,如下所示:

创建数据表

 1def createDb():

2"""创建db数据表"""

3 sql = ‘‘‘

4 create table person (

5 id integer primary key autoincrement not null,

6 name varchar not null,

7 age integer

8 )

9‘‘‘

10 executeSql(sql)

View Code

插入语句

1def insertData(name, age):

2"""插入数据"""

3 sql = insert into person (name,age)values(?,?)

4 executeSql(sql, (name, age))

View Code

update语句

1def updateData(id, name, age):

2"""通过ID进行修改语句"""

3 sql = update person set name=?,age =? where id=?

4 executeSql(sql, (name, age, id))

View Code

delete语句

1def deleteData(id):

2"""通过ID删除数据"""

3 sql = delete from person where id=?

4 executeSql(sql, (id,))

View Code

上面的语句都调用统一的executeSql方法,如下所示:

 1def executeSql(sql, *args):

2"""执行更新语句"""

3 conn = sqlite3.connect(dbfile)

4 cur = conn.cursor()

5try:

6 cur.execute(sql, *args)

7 conn.commit()

8print(执行成功,影响行数:, cur.rowcount)

9except Exception as e:

10 conn.rollback()

11print(e)

12print(执行失败)

13finally:

14 cur.close()

15 conn.close()

View Code

查询语句(无条件查询)

1def queryData():

2"""查询语句"""

3 sql = select id,name,age from person

4 executeQuerySql(sql)

View Code

查询语句(条件查询)

1def queryDataById(id):

2"""通过id进行查询"""

3 sql = select id,name,age from person where id = ?

4 executeQuerySql(sql, (id,))

View Code

上面的查询语句,都调用统一的executeQuerySql方法,如下所示:

 1def executeQuerySql(sql, *args):

2"""执行查询语句,可带参数"""

3 conn = sqlite3.connect(dbfile)

4 cur = conn.cursor()

5try:

6 cur.execute(sql, *args)

7 persons = cur.fetchall()

8for p in persons:

9print(当前行信息如下:)

10print(p) # 返回的是一个元组tuple

11print(查询成功)

12except Exception as e:

13print(e)

14print(查询失败)

15finally:

16 cur.close()

17 conn.close()

View Code

 关于本例子的执行源码,可通过链接进行下载,如下所示:

源码链接

备注

 业精于勤,荒于嬉;行成于思,毁于随!!!

Python之Sqlite3数据库基本操作

以上是 Python之Sqlite3数据库基本操作 [数据库教程] 的全部内容, 来源链接: utcz.com/z/534896.html

回到顶部