Python有很多内置的模块和库,其中就包括一个内存数据库模块——sqlite3。本文将介绍sqlite3模块的基本使用和相关知识。
## 什么是SQLite
SQLite是一个轻量级的、开源的、自包含的、无服务器的、零配置的、跨平台的关系型数据库系统。它使用C语言编写,能够在大多数操作系统上运行。
与传统的关系型数据库不同,SQLite的数据存储在磁盘上的一个文件中,而不是运行在服务器上。这使得SQLite非常适用于一些小型项目或嵌入式系统。
在Python中,我们可以使用内置的sqlite3模块来使用SQLite。该模块提供了一个轻量级、易于使用的API,可以方便地打开、关闭、创建、查询和修改SQLite数据库。
## 安装SQLite和sqlite3模块
因为SQLite是一个自包含的数据库系统,所以我们只需要安装sqlite3模块即可使用。在Python 2.x中,sqlite3模块是默认安装的;在Python 3.x中,我们需要手动安装sqlite3模块。使用以下命令即可安装:
```
pip install pysqlite3
```
## 创建一个数据库
要使用SQLite,我们需要创建一个数据库文件。数据库文件是一个存储在磁盘上的文件,其中包含了所有表和数据。我们可以使用sqlite3模块中的connect()函数打开一个数据库文件或创建一个新文件。
下面是一个创建新数据库文件的例子:
```python
import sqlite3
conn = sqlite3.connect('my_database.db')
```
在这个例子中,我们使用connect()函数创建了一个新数据库文件“my_database.db”,并打开了一个与该文件的连接。如果该文件不存在,则会自动创建。
## 创建一张表
在SQLite中,表是一个有名字的二维数据结构,包含了多个列(也叫属性)。每列都有一个类型,用来指定它们可以存储的数据类型。
要创建一张表,我们需要执行一个CREATE TABLE语句。我们可以使用execute()方法执行该语句。下面是一个创建表的例子:
```python
import sqlite3
conn = sqlite3.connect('my_database.db')
cursor = conn.cursor()
cursor.execute('''CREATE TABLE stocks
(date text, trans text, symbol text, qty real, price real)''')
conn.commit()
conn.close()
```
在这个例子中,我们创建了一张名为“stocks”的表,该表包含了5个列:date、trans、symbol、qty和price。其中,date、trans和symbol列都是文本类型,qty和price列都是实数类型。
## 插入数据
要向表中插入数据,我们需要执行一个INSERT INTO语句。我们可以使用execute()方法执行该语句。下面是一个向表中插入数据的例子:
```python
import sqlite3
conn = sqlite3.connect('my_database.db')
cursor = conn.cursor()
cursor.execute("INSERT INTO stocks VALUES ('2022-01-05', 'BUY', 'AAPL', 100, 145.88)")
conn.commit()
conn.close()
```
在这个例子中,我们向表“stocks”中插入了一条数据,包括了日期“2022-01-05”,交易类型“BUY”,股票代码“AAPL”,交易股数100股,交易价格145.88美元。
## 查询数据
要从表中查询数据,我们需要执行一个SELECT语句。我们可以使用execute()方法执行该语句。下面是一个查询表中所有数据的例子:
```python
import sqlite3
conn = sqlite3.connect('my_database.db')
cursor = conn.cursor()
cursor.execute("SELECT * FROM stocks")
rows = cursor.fetchall()
for row in rows:
print(row)
conn.close()
```
在这个例子中,我们查询表“stocks”中的所有数据,并使用fetchall()方法获取查询结果。然后,我们遍历结果集,并输出每一行数据。
## 更新数据
要更新表中的数据,我们需要执行一个UPDATE语句。我们可以使用execute()方法执行该语句。下面是一个更新某个数据的例子:
```python
import sqlite3
conn = sqlite3.connect('my_database.db')
cursor = conn.cursor()
cursor.execute("UPDATE stocks SET price = 150.00 WHERE symbol = 'AAPL'")
conn.commit()
conn.close()
```
在这个例子中,我们更新表“stocks”中股票代码为“AAPL”的股票的价格为150.00美元。
## 删除数据
要删除表中的数据,我们需要执行一个DELETE语句。我们可以使用execute()方法执行该语句。下面是一个删除某个数据的例子:
```python
import sqlite3
conn = sqlite3.connect('my_database.db')
cursor = conn.cursor()
cursor.execute("DELETE FROM stocks WHERE symbol = 'AAPL'")
conn.commit()
conn.close()
```
在这个例子中,我们删除表“stocks”中股票代码为“AAPL”的所有数据。
## 总结
SQLite是一个轻量级的、开源的、自包含的、无服务器的、零配置的、跨平台的关系型数据库系统。在Python中,我们可以使用内置的sqlite3模块来使用SQLite。该模块提供了一个轻量级、易于使用的API,可以方便地打开、关闭、创建、查询和修改SQLite数据库。
在使用SQLite时,我们需要创建一个数据库文件,然后创建表并向表中插入数据。如果需要查询、更新或删除数据,我们可以使用相应的语句进行操作。最后,我们需要使用commit()方法提交操作并使用close()方法关闭数据库连接。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.ynyuzhu.com/
发表评论 取消回复