本文介绍了创建与 PostgreSQL 上的数据库的连接的过程。 我们需要安装 PostgreSQL 和创建数据库等先决条件,如下所述。
在系统中安装 PostgreSQL
顾名思义,PostgreSQL 是一款为高效管理数据库系统而创建的 SQL 系统软件。
在连接Python之前需要创建数据库。 Postgres,实现它。
许多刚开始学习数据库开发的初学者仍然感到困惑。 据了解,数据库是使用 pgAdmin 而不是 PostgreSQL 创建的。
实际上,前者管理数据库,而后者是构建数据库的框架。
在创建数据库之前,pgAdmin 需要与 PostgreSQL 链接。 所以,首先需要安装PostgreSQL。
Postgres的安装包可以在PostgreSQL官网的下载区找到。 然后,用户可以从那里下载并安装该应用程序。
有多种安装程序可用于 Mac、Linux 和 Windows 等操作系统。
用户还可以获取源代码并在其 PC 上手动编译并安装 pgAdmin4。
pgAdmin 是一个用于管理在 PostgreSQL 上运行的数据库的有效工具。 可以在应用程序的在线网页上找到安装程序等可下载文件。
人们可以从 pgAdmin 的所有稳定版本的列表中进行选择,以及与 PostgreSQL 过程类似的其他安装包发行版。
一旦 pgAdmin 安装到系统中,就可以创建数据库。
使用 pgAdmin 创建数据服务器和数据库
本节包含两个小节。 第一部分解释如何创建数据服务器,第二部分重点介绍数据库。
在 pgAdmin 中创建数据服务器
在创建任何数据库之前,需要正确设置 pgAdmin。 系统会提示您输入主密码,该密码将在创建或访问新数据库时使用。
提供密码后将出现 pgAdmin 网页。 必须搭建新的服务器来生成新的数据库。
添加新服务器按钮会创建一个对话窗口,可以在其中构建新服务器。
首先显示的窗口提供了正在设置的服务器的功能。 在本文中,其中一些将由用户输入提供,而其他一些则由系统生成并保持原样。
首先,需要服务器的名称。 之后,转到连接菜单。
那里需要主机名,通常是 localhost。 端口必须设置为 5432。
遵循以上几点就足以创建一个有用的数据服务器。
在 pgAdmin 中创建数据库
一旦数据服务器启动并运行,就可以创建数据库。 创建的服务器显示在应用程序窗口的左侧,称为仪表板。
左侧面板中服务器名称旁边有一个下拉图标。 单击此图标时会弹出密码对话框,请求系统的主密码。
菜单显示系统内创建的所有服务器。 它保持停用状态,直到通过单击并出现密码提示将其激活。
右键单击数据库区域并选择创建。 为数据库命名,然后在所有者部分选择 postgres; 然后,必须设置数据库定义。
数据库的定义有多个选项需要设置。 以下是众多可用选项中的一些更重要的选项。
- 编码必须设置为 - UTF - 8。
- 模板应在 Postgres 中设置。
- 表空间应设置为 pg_default。
排序规则和字符类型应按原样设置,而连接限制设置为-1。 转到标有 sql 的菜单将给出此处使用的查询的概述。
单击“保存”将创建一个数据库。
将 PostgreSQL 数据库连接到 Python 的步骤
使用 Python 连接到数据库分为三个步骤。 首先,服务器的信息存储在配置文件中。
将创建一个 Python 文件,用于解析配置 (.ini) 文件并在下一步中加载服务器。 在最后一步中,创建一个连接数据库的 Python 文件。
在本文中,程序使用 psycopg2 导入包连接到 PostgreSQL 数据库,获取数据库版本,然后打印它们。
创建存储服务器信息的配置 (.ini) 文件
该文件存储与服务器相关的详细信息,有助于 config.py 文件配置数据库。 文件头位于文件的顶部,用于声明所使用的 RDBMS。
- host - 此处提供所使用的主机或服务器。
- database - 此处给出了需要针对的特定数据库。
- user - 用户应指定为 postgres,因为它是 RDBMS。
- password - 必须在此处输入创建数据库时在 pgAdmin 中给出的主密码。
创建信息文件后,可以在配置文件中使用它。
创建解析配置文件的 Python 文件
该程序使用导入包configparser。 方法配置使用两个参数声明:文件名和部分。
变量解析器被初始化,从变量文件名中读取文件。
下面是从数据库中提取项目的 get 方法。 get 部分放在 if-else 语句内,其中 else 方法处理异常。
最后返回变量数据库。
from configparser import ConfigParser
def config(filename='server_info.ini', section='postgresql'):
parser = ConfigParser()
parser.read(filename)
database = {}
if parser.has_section(section):
params = parser.items(section)
for param in params:
database[param[0]] = param[1]
else:
raise Exception('Section {0} not found in the {1} file'.format(section, filename))
return database
连接 PostgreSQL 数据库的步骤
该程序有两个导入文件。
- psycopg2
- config
创建了一个连接到 PostgreSQL 数据库服务器的方法 connect。
声明了一个变量 param,用于读取连接的参数。 这些参数用于连接到数据库服务器。
语法 psycopg2.connect(**params)
加载连接参数并连接到数据库服务器。 声明了另一个变量 var_cur,用于存储由 connection.cursor 语法创建的游标。
连接建立后,将显示数据库的 PostgreSQL 版本。 var_cur.execute 执行语句 SELECT version()
。
该版本被加载到变量 version_of_database 中,然后由 fetchone()
函数显示,该函数一次获取单个元素。 然后打印该变量。
获取数据库版本后,使用 var_cur.close()
关闭游标。
添加异常处理块以引发错误异常。 在 except 块内,当无法连接到数据库或未找到数据库时,程序会打印一条错误消息。
在异常处理结束时,添加一个finally 块,使用语法 connection.close()
关闭连接。 连接关闭后,数据库会打印一条消息,确认连接已关闭。
最后调用方法connection。
import psycopg2
from config import config
def connect():
connection = None
try:
params = config()
print('Connection made to the postgresql database')
connection = psycopg2.connect(**params)
var_cur = connection.cursor()
print('Database version is - ')
var_cur.execute('SELECT version()')
version_of_database = var_cur.fetchone()
print(version_of_database)
var_cur.close()
except (Exception, psycopg2.DatabaseError) as error:
print(error)
finally:
if connection is not None:
connection.close()
print('Database connection closed.')
if __name__ == '__main__':
connect()
输出:
总结
本文讨论数据库创建并解释如何在 PostgreSQL 中创建数据库。 软件工具 pgAdmin 的不同功能。
读者将详细学习如何使用 Python 连接数据库,以便快速掌握并在实际项目中使用。