「Python简易教程」:轻松学习如何读取数据库表 (python 读取数据库表)
Python简易教程:轻松学习如何读取数据库表
Python是一种非常流行的编程语言,它非常适合初学者学习。如果您想了解如何读取数据库表,Python是一个非常好的选择。Python具有易读易写的语法,是许多开发人员和数据科学家的首选语言。这篇文章将为您提供关于如何使用Python来读取数据库表的简易教程。
在这篇文章中,我们将使用Python内置的sqlite3模块来读取数据库表。sqlite3模块是Python标准库中使用最广泛的模块之一,它允许我们轻松地连接和操作SQLite数据库。SQLite是一种简单而轻量级的关系型数据库,因此我们可以在本地计算机上轻松地创建和使用SQLite数据库。
步骤1:准备工作
您需要安装Python和sqlite3模块。如果您已经安装了Python,那么您可以通过以下命令来确认是否已经安装了sqlite3模块:
“`python
import sqlite3
“`
如果没有出现任何错误,则表示您已经成功安装了sqlite3模块。
接下来,我们需要准备一个SQLite数据库。您可以使用以下命令来创建一个名为“school.db”的数据库,并在其中创建一个名为“students”的表:
“`python
import sqlite3
conn = sqlite3.connect(‘school.db’)
cursor = conn.cursor()
sql = ”’CREATE TABLE students (
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
age INTEGER,
score REAL);”’
cursor.execute(sql)
conn.commit()
conn.close()
“`
在上面的代码中,我们使用connect()函数连接到名为“school.db”的SQLite数据库。然后,我们通过创建一个名为“students”的表来定义数据库模式。students表具有id,name,age和score列。id列是主键列,每次插入新行时,它都会自动增加。score列是一个实数列,因此我们可以插入小数或浮点数。
步骤2:插入数据
在我们开始读取表之前,我们需要向表中插入一些数据。假设我们要插入以下4行数据到students表中:
| id | name | age | score |
|—-|————|—–|——-|
| 1 | Zhang San | 20 | 90.5 |
| 2 | Li Si | 21 | 85.0 |
| 3 | Wang Wu | 22 | 92.5 |
| 4 | Zhao Liu | 23 | 88.0 |
我们可以使用以下命令向students表中插入上述行:
“`python
import sqlite3
conn = sqlite3.connect(‘school.db’)
cursor = conn.cursor()
students = [
(1, ‘Zhang San’, 20, 90.5),
(2, ‘Li Si’, 21, 85.0),
(3, ‘Wang Wu’, 22, 92.5),
(4, ‘Zhao Liu’, 23, 88.0)
]
cursor.executemany(‘INSERT INTO students VALUES (?,?,?,?)’, students)
conn.commit()
conn.close()
“`
在上面的代码中,我们创建了一个名为“students”的列表,其中包含所有要插入的行。然后,我们使用executemany()函数向表中插入所有行。该函数将自动添加正确数量的占位符。在这个例子中,我们插入了4行数据。
步骤3:读取数据
现在我们已经将数据插入了students表,我们可以开始学习如何读取数据库表。下面是两个用于读取表的示例函数。
“`python
import sqlite3
def print_students():
conn = sqlite3.connect(‘school.db’)
cursor = conn.cursor()
cursor.execute(‘SELECT * FROM students’)
for row in cursor.fetchall():
print(row)
conn.close()
def get_student_by_id(id):
conn = sqlite3.connect(‘school.db’)
cursor = conn.cursor()
cursor.execute(‘SELECT * FROM students WHERE id=?’, (id,))
row = cursor.fetchone()
conn.close()
return row
“`
在这个例子中,我们通过connect()函数连接到SQLite数据库并创建一个游标对象。您可以将它们看作是访问数据库的接口。它允许我们执行SQL查询和检索结果。
函数print_students()遍历整个students表,并使用fetchall()方法获取所有结果。它打印每一行的全部内容。在该函数中,我们没有使用任何过滤器,因此它将返回整个表中的所有行。
函数get_student_by_id(id)根据id过滤students表,并使用fetchone()方法获取之一行结果。该函数只返回一个元组,因此它只返回一行数据。
下面是如何使用这两个函数的示例:
“`python
print_students()
row = get_student_by_id(1)
print(row)
“`
输出:
“`
(1, ‘Zhang San’, 20, 90.5)
(2, ‘Li Si’, 21, 85.0)
(3, ‘Wang Wu’, 22, 92.5)
(4, ‘Zhao Liu’, 23, 88.0)
(1, ‘Zhang San’, 20, 90.5)
“`
在上面的代码中,我们首先调用print_students()函数以显示students表中的所有行。然后我们调用get_student_by_id()函数,并将id参数设置为1来检索具有id为1的学生信息。
结论
在本文中,我们介绍了如何使用Python来读取数据库表。我们使用Python内置的sqlite3模块来连接到SQLite数据库并读取学生表中的数据。我们也学习了如何连接到SQLite数据库,如何插入数据,并编写了两个不同的函数来读取和检索数据。通过这篇文章,您将了解如何使用Python来连接到和操作SQLite数据库,以及使用Python内置的sqlite3模块学习读取数据库表的基础知识。