Python 如何操作 SQLite 数据库

让我们来详细讲解下 Python 如何操作 SQLite 数据库的完整攻略。

简介

SQLite 是一种轻量级的关系型数据库,可以嵌入到各种应用程序中,支持多种操作系统,是移动应用和桌面应用的理想选择。Python 代码就可以操作 SQLite 数据库,无需像 MySQL, PostgreSQL 这样的数据库一样需要一个服务进程。本文将讲解如何通过 Python 操作 SQLite 数据库。

安装

使用 Python 操作 SQLite 需要先安装 SQLite3 这个模块,可以通过 pip 安装。

pip install pysqlite3

连接SQLite

首先,需要连接到一个 SQLite 数据库。SQLite 的文件类型是 .db 文件。我们首先需要在 SQLite 中创建一个数据库。

import sqlite3

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

在连接 SQLite 数据库时,可以指定需要连接的数据库的路径。如果不存在该文件,则会自动创建该文件。可以使用 connect() 方法创建一个数据库连接,如果需要不能修改数据库则需要打开方式为 sqlite3.connect('example.db', isolation_level=None)

创建表

准备数据库和表格,可以使用 execute() 方法创建表。SQLite 中没有任何限制,可以将整数、实数、字符串甚至 BLOB(二进制数据)类型的数据存储到任何列中。我们将创建一个具有名称、年龄和地址的人员数据表。

import sqlite3

conn = sqlite3.connect('example.db')
print("Opened database successfully")

conn.execute('''CREATE TABLE COMPANY
       (ID INT PRIMARY KEY NOT NULL,
       NAME TEXT NOT NULL,
       AGE INT NOT NULL,
       ADDRESS CHAR(50),
       SALARY REAL);''')
print("Table created successfully")

conn.close()

插入数据

现在,我们已经创建了 COMPANY 表,可以在其中插入数据。我们将使用 execute() 方法插入 4 条数据。以下是插入数据的 Python 代码。

import sqlite3

conn = sqlite3.connect('example.db')
print("Opened database successfully")

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (1, 'Paul', 32, 'California', 20000.00)")

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (2, 'Allen', 25, 'Texas', 15000.00)")

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (3, 'Teddy', 23, 'Norway', 20000.00)")

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (4, 'Mark', 25, 'Rich-Mond', 65000.00)")

conn.commit()
print("Records created successfully")
conn.close()

查询数据

使用 SELECT 语句查询数据。我们可以使用 cursor 对象来查询数据。以下是完整的 Python 代码:

import sqlite3

conn = sqlite3.connect('example.db')
print("Opened database successfully")

cursor = conn.execute("SELECT id, name, address, salary from COMPANY")
for row in cursor:
   print("ID = ", row[0])
   print("NAME = ", row[1])
   print("ADDRESS = ", row[2])
   print("SALARY = ", row[3], "\n")

print("Operation done successfully")
conn.close()

此处,我们只是简单地进行选择动作。您可以使用 WHERE 语句添加更多筛选条件。

以上就是 Python 操作 SQLite 的完整攻略,希望对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python 如何操作 SQLite 数据库 - Python技术站

(0)
上一篇 2023年5月21日
下一篇 2023年5月21日

相关文章

  • MySQL 和 SQLite 的区别

    MySQL和SQLite是两种常见的关系型数据库管理系统,它们有一些共同点,但也存在不少区别。下面详细讲解MySQL 和 SQLite 的区别。 MySQL 和 SQLite的简介 MySQL: MySQL是一种基于关系模型的数据库管理系统,它采用客户端/服务器架构,常用于大型应用和高并发场景。MySQL支持复杂的SQL查询和事务控制等功能,同时也支持多种语…

    database 2023年3月27日
    00
  • Python中执行存储过程及获取存储过程返回值的方法

    在Python中执行存储过程并获取返回值通常可以通过Python的数据库连接库来完成。下面我们将通过以下步骤详细讲解Python中执行存储过程及获取存储过程返回值的方法: 创建数据库连接对象并连接数据库 首先需要使用Python中的数据库连接库连接到数据库。以MySQL为例,我们可以使用pymysql库来连接MySQL数据库: import pymysql …

    database 2023年5月21日
    00
  • Redis的介绍安装以及启动与使用还有五大数据类型

    目录 一、介绍Redis 1. 详细介绍 2. 介绍总结 二、安装启动以及运行Redis 1. Redis的安装步骤 2. Redis的启动方法 3.图形化界面使用Redis 4.pycharm使用Redis 三、redis五大数据类型 1. 字符串及其操作 2. 哈希以及其操作 3. 列表以及其操作 4. 集合以及其操作 5. 有序集合及操作 一、介绍Re…

    Redis 2023年4月13日
    00
  • Oracle删除数据非常慢的问题及解决

    标题:解决Oracle删除数据非常慢的问题 问题描述 在Oracle数据库中,删除数据时可能会遇到非常慢的问题,情况可能表现为: 删除少量数据时花费较长时间; 删除大量数据时甚至耗费数小时时间。 这种情况通常会影响数据库的性能和用户体验。我们需要找到原因并解决这个问题。 原因分析 索引问题 当执行删除操作时,Oracle会先在表中查找需要删除的行。如果表中存…

    database 2023年5月21日
    00
  • MySQL InnoDB架构的相关总结

    MySQL InnoDB架构的相关总结 MySQL InnoDB是MySQL一种常用的存储引擎,它是一个支持事务的存储引擎。相比其他存储引擎,InnoDB具有以下的优点: 支持事务和ACID属性 支持行级锁定 其数据缓存(buffer pool)较大且可动态扩展 支持外键约束 支持MVCC(多版本并发控制)等高级特性 InnoDB架构 InnoDB的架构分为…

    database 2023年5月19日
    00
  • Redis配置外网可访问(redis远程连接不上)的方法

    Redis是一个开源的、高性能的非关系型内存数据库,其主要功能是提供快速的数据访问。 但是,在默认情况下,Redis只允许本地访问,如果需要对外提供服务,则需要进行相关配置。以下是Redis配置外网可访问的方法: 配置文件修改 Redis的配置文件是redis.conf,可以通过修改该文件来开启外网访问功能。 打开redis.conf,找到bind这一行,检…

    database 2023年5月22日
    00
  • SpringBoot整合Activiti7的实现代码

    下面是详细讲解SpringBoot整合Activiti7的实现代码的完整攻略。 什么是Activiti7 Activiti7是一个轻量级的工作流引擎,它提供了一套流程定义、流程实例、任务管理等服务,可以用来设计和实现复杂的业务流程。 如何在SpringBoot中整合Activiti7 步骤一:添加依赖 在SpringBoot项目的pom.xml文件中添加Ac…

    database 2023年5月22日
    00
  • Linux中selinux基础配置教程详解

    下面我将详细讲解“Linux中selinux基础配置教程详解”的完整攻略。 1. 什么是selinux? SELinux 是一种安全增强技术,用于向 Linux 内核添加额外的强制访问控制机制。它的目标是保护系统的完整性和保密性,通过限制进程使用的资源(如文件、网络端口、设备等),并强制整个系统上下文遵循一个事先定义的政策。 2. 如何启用selinux? …

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部