从零开始的Python开发日记(4):如何连接SQLite数据库

server/2024/10/22 16:23:57/

如何使用Python连接SQLite数据库

SQLite 是一种轻量级的嵌入式数据库,广泛用于小型应用和开发原型。Python 提供了内置的 sqlite3 库,可以方便地连接和操作 SQLite 数据库。本文将介绍如何使用 Python 连接 SQLite 数据库,并包含代码示例。

sqlite3__4">1. 安装和导入 sqlite3 模块

Python 自带 sqlite3 模块,无需额外安装。可以直接在代码中导入。

python">import sqlite3
2. 连接到数据库

可以使用 sqlite3.connect() 方法连接到 SQLite 数据库。如果指定的数据库文件不存在,将创建一个新的数据库文件。

python"># 连接到SQLite数据库
conn = sqlite3.connect('example.db')# 创建一个游标对象
cursor = conn.cursor()
3. 创建表

使用 SQL 语句创建表。例如,创建一个名为 users 的表,包含 id, name, 和 age 列。

python"># 创建表
cursor.execute('''
CREATE TABLE users (id INTEGER PRIMARY KEY,name TEXT NOT NULL,age INTEGER NOT NULL
)
''')
4. 插入数据

使用 INSERT INTO 语句插入数据。

python"># 插入数据
cursor.execute('''
INSERT INTO users (name, age)
VALUES ('Alice', 30)
''')cursor.execute('''
INSERT INTO users (name, age)
VALUES ('Bob', 25)
''')# 提交事务
conn.commit()
5. 查询数据

使用 SELECT 语句查询数据,并使用游标对象的 fetchall() 方法获取所有结果。

python"># 查询数据
cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()# 打印查询结果
for row in rows:print(row)
6. 更新数据

使用 UPDATE 语句更新数据。

python"># 更新数据
cursor.execute('''
UPDATE users
SET age = 31
WHERE name = 'Alice'
''')# 提交事务
conn.commit()
7. 删除数据

使用 DELETE FROM 语句删除数据。

python"># 删除数据
cursor.execute('''
DELETE FROM users
WHERE name = 'Bob'
''')# 提交事务
conn.commit()
8. 关闭连接

完成数据库操作后,关闭游标和连接。

python"># 关闭游标
cursor.close()# 关闭连接
conn.close()
完整示例代码

以下是一个完整的示例代码,演示了如何使用 Python 连接 SQLite 数据库并进行基本的数据库操作。

python">import sqlite3# 连接到SQLite数据库
conn = sqlite3.connect('example.db')
cursor = conn.cursor()# 创建表
cursor.execute('''
CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY,name TEXT NOT NULL,age INTEGER NOT NULL
)
''')# 插入数据
cursor.execute('''
INSERT INTO users (name, age)
VALUES ('Alice', 30)
''')
cursor.execute('''
INSERT INTO users (name, age)
VALUES ('Bob', 25)
''')# 提交事务
conn.commit()# 查询数据
cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()
for row in rows:print(row)# 更新数据
cursor.execute('''
UPDATE users
SET age = 31
WHERE name = 'Alice'
''')
conn.commit()# 删除数据
cursor.execute('''
DELETE FROM users
WHERE name = 'Bob'
''')
conn.commit()# 关闭游标和连接
cursor.close()
conn.close()
结论

本文介绍了如何使用 Python 连接 SQLite 数据库,并演示了创建表、插入数据、查询数据、更新数据和删除数据的基本操作。这些示例代码可以帮助你快速上手使用 SQLite 数据库进行开发。


http://www.ppmy.cn/server/90111.html

相关文章

Spring 简化jdbc开发 05

文章目录 1. JdbcTemplate:2.命名参数和占位符3. 异常处理:4. 事务管理: 在 Spring 框架中,通过其提供的 JDBC 抽象和工具类,可以极大地简化 JDBC 的开发过程,减少了传统 JDBC 开发中的样板代码和错误处理。…

微信答题小程序产品研发-UI界面设计

高保真原型虽然已经很接近产品形态了,但毕竟还不能够直接交付给开发。这时就需要UI设计师依据之前的原型设计,进一步细化和实现界面的视觉元素,包括整体视觉风格、颜色、字体、图标、按钮以及交互细节优化等。 UI设计不仅关系到用户的直观感…

OAK-FFC 分体式相机使用入门介绍

概述 OAK FFC 主控板和多种可选配镜头模组非常适合灵活的搭建您的3D人工智能产品原型。由于镜头是分体式的,因此你可以根据需要测量的距离,自定义深度相机安装基线,并根据你的项目要求(分辨率、快门类型、FPS、光学元件&#xff…

HarmonyOS(45) 控件拖动或者拖拽PanGesture

PanGesture实现控件拖动的效果,通过拖动的坐标位置调用position或者translate方法来更新UI的位置。效果见下图: 具体代码如下: // xxx.ets Entry Component struct PanGestureExample {State offsetX: number 0State offsetY: number 0pos…

多线程死锁与单例模式

目录 1.两个线程两把锁的死锁场景 2.构成死锁的四个必要条件: 3.内存可见性问题 4.volatile的作用 5.wait与sleep的区别 6.单例模式 1.两个线程两把锁的死锁场景 1)线程1先针对线程A加锁,线程2针对线程B加锁,线程1在不释放…

uniapp中@click或者@tap多层嵌套的问题解决方法

我们在开发页面的过程中。例如要设计一个九宫格的相册,并且加上删除上传图片和点击图片后预览图片大图的功能例如下图的演示功能。 点击图片后显示大图预览图片,点击x号后要删除掉当前的图片,那么我们设计的时候如果我们代码写成如下的格式 …

Java整理13

1、响应式 将一个普通数据转换成响应式数据2种方式 (1)ref函数 适合单个变量 import {ref} from vue let counter ref(10) 在script中操作ref响应式数据需要用.value 在template中,操作响应式数据无需用.value (2)r…

【 C语言 】 C语言设计模式

一 、C语言和设计模式(继承、封装、多态) C有三个最重要的特点,即继承、封装、多态。我发现其实C语言也是可以面向对象的,也是可以应用设计模式的,关键就在于如何实现面向对象语言的三个重要属性。 (1&…