📜  Python SQLite-Where子句(1)

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

Python SQLite-Where子句

在使用SQLite数据库时,WHERE子句是一种非常重要的查询语句,它可以用来限制查询结果的范围。SQLite中的WHERE子句的语法如下:

SELECT column1, column2, ...
FROM table_name
WHERE condition;

其中,column1、column2等表示查询的列名,table_name表示查询的表名,condition表示查询的条件。下面我们将介绍如何在Python中使用WHERE子句来查询SQLite数据库。

连接SQLite数据库

在Python中使用SQLite数据库,我们需要先安装SQLite3模块。安装完毕后,我们可以使用以下代码来连接我们的数据库。

import sqlite3

conn = sqlite3.connect('example.db')

其中example.db为我们要连接的数据库名。如果该数据库不存在,则会自动创建一个新的数据库。

创建数据表

在连接到数据库后,我们可以使用以下的代码来创建一个新的数据表。这里我们创建一个名为data的数据表,其中包含id和name两列。

c = conn.cursor()

c.execute('''CREATE TABLE data
             (id INT PRIMARY KEY     NOT NULL,
              name           TEXT    NOT NULL);''')
插入数据

我们可以使用以下代码来向数据表中插入数据。

c.execute("INSERT INTO data (id, name) \
          VALUES (1, 'Alice')")
c.execute("INSERT INTO data (id, name) \
          VALUES (2, 'Bob')")
c.execute("INSERT INTO data (id, name) \
          VALUES (3, 'Charlie')")
c.execute("INSERT INTO data (id, name) \
          VALUES (4, 'David')")

conn.commit()

注意,每次插入数据后,我们需要调用commit()方法来保存我们的修改。

查询数据

有了数据之后,我们就可以使用WHERE子句来查询我们需要的数据了。例如,我们可以使用以下代码来查询名字为Bob的记录。

cursor = conn.execute("SELECT * FROM data WHERE name='Bob'")
for row in cursor:
    print("ID = ", row[0])
    print("NAME = ", row[1], "\n")

执行结果为:

ID =  2
NAME =  Bob 
关闭数据库连接

完成查询操作后,不要忘记关闭数据库连接。

conn.close()

以上就是Python SQLite-Where子句的介绍。我们可以使用WHERE子句来限制查询结果的范围,使我们的查询更加灵活。