📜  Python SQLite-选择数据(1)

📅  最后修改于: 2023-12-03 15:34:04.664000             🧑  作者: Mango

Python SQLite-选择数据

SQLite是一个轻量级的关系型数据库管理系统,是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的SQL数据库引擎。它是在一个单一的磁盘文件中存储整个数据库,所以非常适合小型应用以及移动应用。

在Python中,我们可以使用sqlite3模块来操作SQLite数据库。本文将介绍如何在Python中选择SQLite数据库中的数据。

连接到SQLite数据库

要操作SQLite数据库,首先需要连接到SQLite数据库。可以使用sqlite3模块中的connect()函数来连接SQLite数据库。例如,要连接到名为test.sqlite的数据库并返回连接对象,可以使用以下代码:

import sqlite3

conn = sqlite3.connect('test.sqlite')
查询数据

有了连接对象,就可以使用它来查询数据库。可以使用连接对象的cursor()方法来创建一个游标对象。游标对象有一个execute()方法,可以执行SQL查询语句并返回一个结果集。

下面是一个例子,使用SELECT查询语句从一个名为'users'的表中获取所有行:

import sqlite3

conn = sqlite3.connect('test.sqlite')
cursor = conn.cursor()

cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()
for row in rows:
    print(row)

上面的代码首先连接到名为'test.sqlite'的数据库,创建一个游标对象,然后使用execute()方法执行一个SELECT查询语句获取所有的行。fetchall()方法返回一个包含所有行的元组,然后使用for循环遍历所有行。

如果需要获取单个行数据,可以使用fetchone()方法。例如,下面的代码只获取第一行数据:

import sqlite3

conn = sqlite3.connect('test.sqlite')
cursor = conn.cursor()

cursor.execute('SELECT * FROM users')
row = cursor.fetchone()
print(row)
按条件查询数据

除了获取所有行数据之外,还可以按条件查询SQLite表。例如,下面的代码查询名为'users'的表中所有age大于20的行数据:

import sqlite3

conn = sqlite3.connect('test.sqlite')
cursor = conn.cursor()

cursor.execute('SELECT * FROM users WHERE age > 20')
rows = cursor.fetchall()
for row in rows:
    print(row)

在SELECT语句中使用WHERE关键字可以指定条件。上面的代码中,使用WHERE age > 20指定了age大于20的条件。

结论

本文简要介绍了如何在Python中使用sqlite3模块选择SQLite数据库中的数据。首先需要连接到数据库,然后使用游标对象执行SELECT语句来查询数据。也可以根据条件查询数据,只需在SELECT语句中使用WHERE关键字来指定条件即可。