大家好,在这篇文章中,我们将研究Sqlite3数据库是如何工作的,以及如何使用Python一次增加多条记录。现在,数据库工作在四个基本操作上:
- 创建
- 检索
- 更新
- 删除
今天在技术领域最常用的数据库类型是关系型数据库。它们的名字本身就定义了它们的功能--用一些特殊键连接的表。其中之一是Sqlite3数据库。
SQL与SQLite3
让我们快速比较一下SQL和SQLite有什么相似和不同之处。
什么是SQL?
SQL是一种帮助我们与数据库沟通的语言。SQL的命令被专门称为 "查询"。每个查询都有一个特殊的目的。这种解释性语言没有任何特殊的编译器,而是通过特殊的SQL框架来执行。互联网上有各种服务器。其中之一是SQLite3。
什么是SQLite3?
SQLite3框架是一个轻量级的SQL服务器。以下是SQLite3的一些特点。
- 不需要服务器连接来进行原始工作。
- 需要较少的内存空间。
- 不需要安装,解压压缩文件,就可以使用。
- 命令更容易执行。
- 跨平台 - 在Windows、Linux和Mac系统上运行。
- 集成--可使用C/C++、Java、Python等语言操作。
在Sqlite3数据库中插入多条记录的步骤
文章的这一部分告诉我们如何使用SQLite3与Python,并在SQL中用一条命令添加多条记录。
注意:跳到第5点,了解使用Python在SQLite3数据库中添加多条记录的代码。
1.设置环境
当我们与任何数据库一起工作时,我们需要设置一些要点。在处理巨大的项目时,这是一个很好的做法。
- 创建一个文件夹SQLITE,它将存放我们所有的数据库和代码。
- 在该文件夹中创建另一个文件夹作为数据库。这将包含所有的数据库。
- 从官方网站下载slqite3 zip包:https://sqlite.org/download.html,并搜索Windows下的预编译二进制文件。我们可以根据我们的系统选择是32位还是64位。
- 下载后,将压缩包解压到我们的SQLite文件夹中。这样就完成了,不需要再安装任何东西。
- 创建一个python文件data.py,其中包含我们要写的全部代码。
2.使用Python在SQLite3中创建一个数据库
Python提供了一个特殊的库,即sqlite3,它作为一个内置包与它一起出现。因此,我们的任务变得很容易。我们只需要在我们的系统中拥有Python 3.x.x版本。建议使用3.6.x版本以实现无错误编程。
代码:
import sqlite3
connection = sqlite3.connect('databases/student.db') # file path
# create a cursor object from the cursor class
cur = connection.cursor()
cur.execute('''
CREATE TABLE customers(
first_name text,
last_name text,
email text
)''')
# committing our connection
connection.commit()
# close our connection
connection.close()
SQLITE中的数据类型:在sqlite3中存在五种数据类型
- NULL
- INTEGER
- REAL:小数点数字
- TEXT:字符串
- Blob:图像、MP3文件、视频文件等。
解释一下:
- 导入sqlite3模块。
- 使用connect()方法创建一个连接对象。这个方法创建一个数据库。使用连接对象进行存储。
- 使用cursor()函数创建一个游标对象。创建一个简单的对象以方便工作流程。游标对象有助于连接到一个新的或现有的数据库并对其进行操作。
- 然后使用同一个游标对象调用execute()函数。这个函数以字符串参数的形式接受所有的SQL查询。
- 创建一个简单的数据库,持有三条记录 "first_name", "last_name", 和 "email"。使用commit()函数提交操作。使用点". "操作符在连接对象中调用它。
- 使用close()方法关闭连接。
该命令还在数据库文件夹中插入了 "student.db "文件。
3.在SQLite studio中查看数据库
从解压后的文件夹中打开SQLite studio,选择语言为 "美式英语"。 然后,它将打开一个像这样的界面。
SQLite工作室界面
点击数据库 一栏,从中选择添加数据库选项。我们也可以使用**"Ctrl + O "**命令来执行。
添加一个数据库
要从系统中添加数据库,请点击文件夹图标
从文件夹中选择适当的数据库
查看添加的数据库
4.在数据库中插入数值
这是最重要的查询之一。因为创建一个表并让它空着没有任何好处。因此,我们将向我们的表插入一些样本数据。SQLite模块的两个方法为我们提供了帮助,可以做到这一点。
- execute() - 一次只插入一条记录。
- executemany() - 一次插入多条记录。
一次添加一条记录
代码
import sqlite3
connection = sqlite3.connect('databases/student.db') # file path
# create a cursor object from the cursor class
cur = connection.cursor()
cur.execute("INSERT INTO student_data VALUES ('Shree', 'Narayan', '
输出
要查看我们数据库的变化,只需打开Sqlite3工作室,查看工作室的数据 选项。
检查插入的数据
解释:
- 首先,与数据库连接。
- 然后创建一个游标对象。
- 然后使用execute()函数添加学生的记录,姓名="Shree",姓氏="Narayan",电子邮件="[email protected]"。
- 提交更改,然后关闭连接。
5.一次添加多条记录
代码
import sqlite3
# connection = sqlite3.connect(':memeory:')
connection = sqlite3.connect('databases/student.db') # file path
# create a cursor object from the cursor class
cur = connection.cursor()
# creating a list of items
multiple_columns = [('Walt', 'Diseny', '
解释
- 首先,与数据库连接。
- 然后创建一个游标对象。
- 我们需要创建一个持有三个学生数据的图元列表。将其命名为multiple_records。
- 使用游标对象,我们将使用 executemany() 函数。使用(INSERT INTO student_data column VALUES (?, ?, ?), multiple_records)命令。
- 这里(?, ?, ?)是一个占位符 ,它有问号,根据特定表的列数来使用。我们有三列,所以我们使用三个占位符。
executemany()函数的语法
cursor_object.executemany("INSERT INTO database_name VALUES (?,?,?,...?)", column_list)
输出
进入工作室,然后点击 刷新按钮或按F5, 我们得到更新的student_data。
一次插入多条记录
总结
在这里我们总结一下这篇文章,我希望这能帮助大家在他们各自的DBMS中进行所有可能的改变。使用Python的SQLite很容易学习,但是要对每一段代码进行修改。