PostgreSQL是以加州大学伯克利分校计算机系开发的 POSTGRES,现在已经更名为PostgreSQL,版本 4.2为基础的对象关系型数据库管理系统(ORDBMS)。PostgreSQL支持大部分 SQL标准并且提供了许多其他现代特性:复杂查询、外键、触发器、视图、事务完整性、MVCC。同样,PostgreSQL 可以用许多方法扩展,比如, 通过增加新的数据类型、函数、操作符、聚集函数、索引。
本章介绍SQL的语法。它是理解后面章节的基础,它们详细描述了SQL如何用于定义和修改数据。对于已经熟悉SQL的用户,同样应该仔细阅读本章,因为它包含了各个SQL数据库中实现方式不同的一些规则和概念,这些是PostgreSQL特有的属性。4.1. 词法结构SQL输入由一系列命令组成。命令由一系列符号组成,以分号(“;”)结束。输入流的结束也会结束一个命令。每个命令能够使用的符号不尽相同。
3.1. 引言上一章我们描述了PostgreSQL中使用SQL存储和访问数据的基本概念。接下来我们将会讨论一些简化管理和防止数据丢失或损坏的高级特性。最后,我们将会了解一些PostgreSQL扩展。本章将会引用第2章中的一些示例,并且进行修改和改进,所以最好先阅读第2章。本章的某些示例也可以在tutorial目录中的advanced.sql中找到。该文件中还包含一些示例数据。3.2.
本章讲述如何创建用于存储数据的数据库结构。在关系数据库中,原始数据存储在表中,因此本章主要涉及如何创建和修改表,以及控制表中存储的数据的特性。然后,我们讨论了如何在模式中组织表,以及表的权限管理。最后,我们将简单了解与数据存储有关的其他特性,例如继承,视图,函数和触发器。5.1. 表的基础知识 关系数据库中的表就像书面上的表格一样:由行和列组成。列的数量和顺序是固定的,并且每个列有一个...
2.1. 引言本章概述了如何使用SQL执行简单的操作。本教程只是关于SQL的一个简介,而不是完整的教程。关于SQL的书籍有很多,包括Understanding the New SQL和A Guide to the SQL Standard。需要注意的是一些PostgreSQL语言特性是针对标准SQL的扩展。在以下示例中,假设你已经创建了一个名为mydb的数据库,参见前文,并且能够登录p
上一章介绍了如何创建表,如何填充数据,如何操作数据。本章我们将要讨论如何检索数据库中的数据。7.1. 概述 检索数据的过程或者命令称为查询。在SQL中SELECT命令用于指定查询。SELECT命令的一般语法如下:[WITH with_queries] SELECT select_list FROM table_expression [sort_specification]随后的章节将...
1.1. 安装要使用,先安装!可能你的环境中已经安装了PostgreSQL,也许是操作系统已经包含了PostgreSQL,也许是系统管理员已经安装了PostgreSQL。如果是这样的话,你应该通过操作系统文档或者系统管理员了解如何访问PostgreSQL。如果你不确定是否已经安装了PostgreSQL或者是否能够用于实验,可以自己安装。安装并不难,而且是一个很好的练习。PostgreSQL可以
PostgreSQL 11 针对窗口函数(window function)进行了增强,添加了 SQL:2011 标准中的所有窗口范围(window frame)子句选项。具体来说,新增了以下功能: - 允许在`RANGE`窗口模式中使用`off_set PRECEDING/FOLLOWING`限定窗口范围 - 支持`GROUPS`窗口模式,使用基于组的方式限定窗口范围 - 支持窗口范围子句的排除选项,用于排除窗口内的某些数据行
文章目录Barman 简介Barman 简介Barman(Backup and Recovery Manager,备份与恢复管理器)是一个用于 PostgreSQL 数据库灾难恢复的开源管理工具,使用 Python 编写。Barman 使得企业能够执行多个关键业务数据库的远程备份,并且协助 DBA 执行灾难时的数据恢复。Barman 用于 PostgreSQL 数据库的物理备份,与 Ora...
pgAdmin 是一个非常流行、功能强大并且开源的 PostgreSQL 管理与开发平台。pgAdmin 支持 Linux、Unix、Mac OS X 以及 Windows 操作系统,可以管理 PostgreSQL 9.2 以及更高版本。
PostgreSQL 常用管理、开发、集群、复制、备份工具。
文章目录索引相关的性能、功能和管理内联 WITH 查询(通用表表达式)分区增强遵循 SQL/JSON 规范的 JSON 路径查询排序规则最频繁值统计计算列可插拔式表存储接口页面校验和认证与连接安全变更注意事项2019-05-23 PostgreSQL 全球开发组发布消息称,PostgreSQL 12 第一个 beta 版提供下载测试。这个版本包含了 PostgreSQL 12 正式版中的所有特性...
介绍 PostgreSQL 获取当前日期时间的函数及注意事项:包括 CURRENT_DATE、CURRENT_TIME、LOCALTIME、CURRENT_TIMESTAMP、LOCALTIMESTAMP、transaction_timestamp()、statement_timestamp()、clock_timestamp()、timeofday()、now() 以及 pg_sleep()。
PostgreSQL 全球开发组于 2020-05-21 宣布了 PostgreSQL 13 的第一个 beta 版本,目前已经提供了下载。虽然细节可能会有所改变,但是该版本包含了 PostgreSQL 13 最终正式版中的所有新特性的预览,让我们赶紧一睹为快吧!
PostgreSQL 中的每个表都包含了 6 个隐藏的系统字段:tableoid、xmin、xmax、cmin、cmax、ctid,这些字段可以用于获取关于数据行的一些内部信息。
在 PostgreSQL 中可以利用表达式索引(函数索引)基于常量值创建一个唯一索引,从而限制表中只能包含一行数据。同时,可以使用 INSERT ON CONFLICT 语句实现数据的插入和更新,通过触发器禁止防止数据被删除。
system_stats 是由 EnterpriseDB 开源的一个 PostgreSQL 扩展插件,提供了数据库服务器 CPU、内存、磁盘和网络相关的统计指标,可以用于替代操作系统级别的监控。
介绍如何在 PostgreSQL 中生成连续的数字、字符以及时间序列值。包括使用 generate_series 函数生成连接的数字序列、间隔的数字序列、连续的字符序列以及间隔的时间序列,使用通用表表达式生成等差数字序列、等比数字序列、斐波那契数列、连续的字符序列以及间隔的时间序列。
数据透视表(Pivot Table)是进行数据汇总、分析、浏览和展示的强大工具,可以帮助我们了解数据中的对比情况、模式和趋势,是数据分析师和运营人员必备技能之一。本文介绍了在 PostgreSQL 中实现数据透视表的三种方式,包括使用 CASE 条件表达式和分组聚合相结合、聚合函数的 FILTER 子句以及扩展模块 tablefunc 中的 crosstab 函数生成数据透视表。
本文为大家精心整理了 PostgreSQL 数据库中最常用的语句和命令,并且制作了 PDF 版本的命令速查表。具体内容包括 psql 工具连接服务器和基本使用,角色、用户和组以及权限管理,数据库和模式管理,数据表,索引,表空间,备份与还原,查询语句,DML 语句,事务控制,视图,存储过程/函数以及触发器的管理。
本文介绍了如何通过PostgreSQL扩展模块postgres_fdw实现跨库访问,也就是在一个数据库中访问外部的其他PostgreSQL数据库。具体步骤如下:使用CREATE EXTENSION命令安装postgres_fdw模块;使用CREATE SERVER命令创建一个外部服务器对象;使用CREATE USER MAPPING命令为本地用户创建一个远程用户映射;使用CREATE FOREIGN TABLE或者IMPORT FOREIGN SCHEMA语句为每个远程数据库中的表创建一个外部表。
PostgreSQL 13 实现了 FETCH FIRST 子句的 WITH TIES 选项,可以用于返回更多排名相同的数据行。
sqlbench 是一个使用 Go 语言开发的 SQL 性能测试工具,主要用于开发环境中不同 SQL 语句执行效率(CPU)的测量和比较。sqlbench 遵循 MIT 开源协议,支持 Windows、Linux 以及 macOS 平台,目前支持 PostgreSQL 数据库。
PostgreSQL 扩展模块 pgcrypto 提供了单向加密算法 MD5、SHA、HMAC ,PGP 双向加密算法 Blowfish、AES、DES 等,可以用于实现数据的加密和解密。本文介绍了这个模块的安装、函数的使用以及实际案例,包括用户密码加密、信用卡号的加密与解密。