PostgreSQL

PostgreSQL图(graph)的递归查询实例

PostgreSQL图(graph)的递归查询实例

背景 在树形递归查询这篇文章,我记录了使用CTE语法查询树形结构的办法。在一个树形结构中,每一个节点最多有一个上级,可以有任意个数的下级。 在实际场景中,我们还会遇到对图(graph)的查询,图和树的最大区别是,图的节点可以有任意个数的上级和下级。如下图所示 因为图可能存在loop结构(上图红色箭头),所以在使用CTE递归的过程中,必须要破环(break loop),否则算法就会进入无限递归,永不... »

PostgreSQL中使用数组改进性能实例代码

PostgreSQL中使用数组改进性能实例代码

前言 postgresql支持数组类型,可以是基本类型,也可以是用户自定义的类型。日常中使用数组类型的机会不多,但还是可以了解一下。不像C或JAVA高级语言的数组下标从0开始,postgresql数组下标从1开始,既可以指定长度,也可以不指定长度。且postgresql既支持一维数组,也支持多维数组,但是平时二维数组也就够用了。 本文将给大家介绍PostgreSQL通过数组改进性能的相关内容,分享... »

Linux下创建Postgresql数据库的方法步骤

Linux下创建Postgresql数据库的方法步骤

前言 PostgreSQL (也叫 Postgres)是一个自由的对象-关系数据库服务器(数据库管理系统),它在灵活的 BSD-风格许可证下发行。因为之前用默认的配置创建pgsql数据库,导致root的占用率达到97%: 所以决定重新创建一次数据库,很多坑又忘了。为了避免以后再忘记,所以决定记录下面,分享出来供大家参考学习,下面来一起看看详细的介绍吧。 创建步骤如下: 创建一个放Data的文件夹,... »

Postgresql ALTER语句常用操作小结

postgresql版本:psql (9.3.4)1、增加一列复制代码 代码如下:ALTER TABLE table_name ADD column_name datatype; 2、删除一列复制代码 代码如下:ALTER TABLE table_name DROP column_name; 3、更改列的数据类型复制代码 代码如下:ALTER TABLE t »

PostgreSQL教程(六):函数和操作符详解(2)

六、模式匹配:     PostgreSQL中提供了三种实现模式匹配的方法:SQL LIKE操作符,更近一些的SIMILAR TO操作符,和POSIX-风格正则表达式。     1. LIKE:   代码如下:     string LIKE pattern [ ESCAPE escape-char... »

深入理解PostgreSQL的MVCC并发处理方式

深入理解PostgreSQL的MVCC并发处理方式

Postgre数据库的很大的卖点之一就是它处理并发的方式。Postgres通过一个叫做 多版本并发控制 的机制做到了这一点。当你使用PostgreSQL来设计高并发的应用时,理解它的MVCC是怎么实现的很重要。举个例子,当你插入一行记录时,Postgre会把当前事务的XID存储在这一行中并称之为 xmin 。这应该成为一个例行的维护,所以Postgre自带了auto_vacuum守护进程会在一个可... »

用一整天的时间安装postgreSQL  NTFS权限

用一整天的时间安装postgreSQL NTFS权限

由于某个项目要求,需要安装postgreSQL,于是下载来.exe的安装文件运行。 一开始很顺利,可哪知安装到最后,初始化数据库的时候出现了一个该死的对话框(在此画个圈圈诅咒微软,他跳出来的错误对话框从来没什么用)云: Exception Processing Message c0000135 Parameters 759851d8 759851d8 759851d8 759851d8 手动运行i... »

Postgresql备份和增量恢复方案

前言 最近工作上使用的数据库一直是Postgresql,这是一款开源的数据库,而且任何个人可以将该数据库用于商业用途。在使用Postgresql的时候,让我最明显的感觉就是这数据库做的真心好,虽然说数据库的安装包真的很小,但是性能和操作的便捷是一点也不输给其他商业的大型数据库,另外在命令行界面下对该数据库直接进行操作的感觉真的是很爽。在使用数据库的时候,我们作为小公司的数据库管理员有一项工作是不可... »

PostgreSQL中如何使用dblink实现跨库查询

PostgreSQL中使用dblink实现跨库查询的方法

最近一个sql语句涉及到跨库的表之间的联合查询,故研究学习下。 一开始研究知道了sql语句的写法,但是执行通过不了,需要先安装dblink扩展。这些博文里都没说清楚,感谢网友指点,在windows下只需要在相应的数据库下执行sql语句“create extension dblink”就ok了。而以上的博文基本上说的都是linux下的操作方法,也因此我走了弯路。 2.下载了PostgreSQL的源代... »

SQLite教程(七):数据类型详解

一、存储种类和数据类型:     SQLite将数据值的存储划分为以下几种存储类型:   代码如下:      NULL: 表示该值为NULL值。      INTEGER: 无符号整型值。      REAL: 浮点值。  &n... »

PostgreSQL教程(五):函数和操作符详解(1)

PostgreSQL教程(五):函数和操作符详解(1)

一、逻辑操作符:     常用的逻辑操作符有:AND、OR和NOT。其语义与其它编程语言中的逻辑操作符完全相同。 二、比较操作符:     下面是PostgreSQL中提供的比较操作符列表: 比较操作符可以用于所有可以比较的数据类型。所有比较操作符都是双目操作符,且返回boolean类型。除了比较操作符以外,我们还可以使用BETWEEN语... »

Windows下Postgresql数据库的下载与配置方法

Windows下Postgresql数据库的下载与配置方法

注意下载的是二进制版,不是带Windows Installer的。 http://www.enterprisedb.com/products-services-training/pgbindownload x86下载http://get.enterprisedb.com/postgresql/postgresql-9.2.4-1-windows-binaries.zip x64下载http://g... »

解决PostgreSQL服务启动后占用100% CPU卡死的问题

进程中有N个postgres.exe(此为正常,见官方文档),却有一个始终占满CPU(由于本机是双核,占用了50%的资源)。自带的pgAdmin III连接会死掉。 此问题在网上搜索没找到答案。 查看日志发现有这样一条错误信息: %t LOG:  could not receive data from client: An operation was attempted on somet... »

Postgresql主从异步流复制方案的深入探究

前言 数据库的备份工作在日常生产中极为重要,如果你咨询一个DBA如何才能设计出高可用的数据备份与恢复方案,相信很多人都会从架构上给出很多容灾的意见。但归根到底,如果业务环节中数据库还牵涉到分布式环境,我认为一个好的方案需要达到三大要求: 多副本 持久化 一致性 日常架构设计中,我们不仅要保证数据额的成功备份,还要保证备份的数据可以快速恢复。在众多备份恢复可靠性方案中 主从复制 技术,可以说是最常见... »

PostgreSQL数据库中跨库访问解决方案

PostgreSQL跨库访问有3种方法:Schema,dblink,postgres_fdw。 方法A:在PG上建立不同SCHEMA,将数据和存储过程分别放到不同的schema上,经过权限管理后进行访问。 方法A的示例如下: 测试1(测试postgres超级用户对不同schema下对象的访问) 查看当前数据库中的schema  postgres=# \dn  List of s... »

PostgreSQL教程(二十):PL/pgSQL过程语言

一、概述:     PL/pgSQL函数在第一次被调用时,其函数内的源代码(文本)将被解析为二进制指令树,但是函数内的表达式和SQL命令只有在首次用到它们的时候,PL/pgSQL解释器才会为其创建一个准备好的执行规划,随后对该表达式或SQL命令的访问都将使用该规划。如果在一个条件语句中,有部分SQL命令或表达式没有被用到,那么PL/pgSQL解释器在本次调用中将不会为... »

PostgreSQL教程(四):数据类型详解

PostgreSQL教程(四):数据类型详解

在目前的PostgreSQL版本中,decimal和numeric是等效的。虽然在某些其它的数据库系统里,char有一定的性能优势,但在PostgreSQL里没有。 »

Debian中PostgreSQL数据库安装配置实例

用惯了MySQL后,想尝试使用下PostgreSQL,据说这玩意儿也很强大,我在网上搜索了下相关中文书籍,可惜相关书籍远远没有MySQL那么多,不过我在官方找到了由志愿者翻译的文档(参考9.1文档翻译项目),说实话我英文文档阅读能力还是比较纠结的,所以有中文文档当然优先中文了。 在Debian下可以通过apt-get命令直接安装: 代码如下:sudo apt-get install postgre... »

PostgreSQL 安装和简单使用第1/2页

据我了解国内四大国产数据库,其中三个都是基于PostgreSQL开发的。并且,因为许可证的灵活,任何人都可以以任何目的免费使用,修改,和分发 PostgreSQL,不管是私用,商用,还是学术研究使用。本文只是简单介绍一下postgresql的安装和简单的使用,语法方面涉及的比较少,以方便新手上路为目的。 1.系统环境和安装方法 ; PostgreSQL的安装方法比较灵活,可以用源码包安装,也可以用... »

PostgreSQL实现交叉表(行列转换)的5种方法示例

交叉表 交叉表(Cross Tabulations)是一种常用的分类汇总表格。使用交叉表查询,显示源于表中某个字段的汇总值,并将它们分组,其中一组列在数据表的左侧,另一组列在数据表的上部。行和列的交叉处可以对数据进行多种汇总计算,如:求和、平均值、记数、最大值、最小值等。使用交叉表查询数据非常直观明了,被广泛应用。交叉表查询也是数据库的一个特点。 例如:   select 表1.组名,   (se... »

Windows下Postgresql下载与配置方法

Windows下Postgresql下载与配置方法

注意下载的是二进制版,不是带Windows Installer的,即绿色版本 http://www.enterprisedb.com/products-services-training/pgbindownload x86下载:postgresqwindows x64下载:postgresqwindowsx64 执行下列步骤前,暂作以下假定: PostgreSQL拟装在d:\postgresql ... »

PostgreSQL教程(十九):SQL语言函数

SQL函数的函数体应该是用分号分隔的SQL语句列表,其中最后一条语句之后的分号是可选的。复制代码 代码如下: CREATE TABLE foo ; 2). 创建SQL函数,其返回值为与foo表对应的复合类型。 »

PostgreSQL教程(三):表的继承和分区表详解

一、表的继承:     这个概念对于很多已经熟悉其他数据库编程的开发人员而言会多少有些陌生,然而它的实现方式和设计原理却是简单易懂,现在就让我们从一个简单的例子开始吧。     1. 第一个继承表:   代码如下:     CREATE TABLE cities (   R... »

用PostgreSQL数据库做地理位置app应用

项目中用到了postgreSQL中的earthdistance()函数功能计算地球上两点之间的距离,中文的资料太少了,我找到了一篇 英文的、讲的很好的文章  ,特此翻译,希望能够帮助到以后用到earthdistance的同学。 做一个GEO应用从来都不是一件容易的事。但是用一些身边的开源项目就可以在几分钟内轻松解决这个问题。 PostgreSQL有许多特性。是我的首选,它能够把数据库平台... »

Windows PostgreSQL 安装图文教程

Windows PostgreSQL 安装图文教程

它提供了多版本并行控制,支持几乎所有 SQL 构件(包括子查询,事务和用户定义类型和函数), 并且可以获得非常广阔范围的(开发)语言绑定 (包括 C,C++,Java,perl,tcl,和 python)。本文介绍的是其在windows系统下的安装过程。 一般说来,一个现代的与 Unix 兼容的平台应该就能运行 PostgreSQL。而如果在windows系统下安装,你需要 Cygwin 和cyg... »

Page 1 of 6123»