Peewee - 使用 PostgreSQL
Peewee 也支持 PostgreSQL 数据库。 为此,它有 PostgresqlDatabase 类。 在本章中,我们将看到如何在 Peewee 模型的帮助下连接到 Postgres 数据库并在其中创建一个表。
与 MySQL 的情况一样,无法使用 Peewee 的功能在 Postgres 服务器上创建数据库。 必须使用 Postgres shell 或 PgAdmin 工具手动创建数据库。
首先,我们需要安装 Postgres 服务器。 对于 windows 操作系统,我们可以下载 https://get.enterprisedb.com/postgresql/postgresql-13.1-1-windows-x64.exe 并安装。
接下来,使用 pip 安装程序安装 Postgres 的 Python 驱动程序 – Psycopg2 包。
pip install psycopg2
然后从 PgAdmin 工具或 psql shell 启动服务器。 我们现在可以创建数据库了。 运行以下 Python 脚本以在 Postgres 服务器上创建 mydatabase。
import psycopg2 conn = psycopg2.connect(host='localhost', user='postgres', password='postgres') conn.cursor().execute('CREATE DATABASE mydatabase') conn.close()
检查数据库是否已创建。 在 psql shell 中,可以用 \l 命令验证 −
要声明 MyUser 模型并在上述数据库中创建同名表,请运行以下 Python 代码 −
from peewee import * db = PostgresqlDatabase('mydatabase', host='localhost', port=5432, user='postgres', password='postgres') class MyUser (Model): name=TextField() city=TextField(constraints=[SQL("DEFAULT 'Mumbai'")]) age=IntegerField() class Meta: database=db db_table='MyUser' db.connect() db.create_tables([MyUser])
我们可以验证表是否已创建。 在 shell 中,连接到 mydatabase 并获取其中的表列表。
要检查新创建的 MyUser 数据库的结构,请在 shell 中运行以下查询。