python 自带内存数据库

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/

点赞(60) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部