栏目: PostgreSQL

Postgresql 截取字符串的案例

截取字符串一般用substring就够用了。对于有些长度不定的就没法用这个函数了,但还是有规律的,可以某个字符分割。如:(这是一个url,截取最后一部分。现在要取-后面部分内容)8a59e88177ad5e70-20170317120301AB9E.plist12b8d5c26d83a17f-201...

2021-03-28 153 0 0 阅读全文

PostgreSQL 实现快速删除一个用户

背景在多租户场景或者其他场景下,很多时候需要主动清理一些用户,本文将介绍PostgreSQL下如何快速删除一个用户(role)。具体方法一般情况下直接执行droprolexxx;就可以把这个用户删除。但是很多时候会因为用户有依赖而报错。权限依赖postgres=#createroletestwith...

2021-04-05 143 0 0 阅读全文

PostgreSQL用户、数据库及表的管理、操作与授权方式

摘要PostgreSQL的常用命令1、登录数据库/*切换到数据库用户*/su-postgres/*登录*/psql登录成功显示如下:bash-4.2$psqlpsql(9.3.17)Type"help"forhelp.postgres=>2、切换数据库/*登录指定数据库*/...

2021-04-05 196 0 0 阅读全文

Postgresql限制某个用户仅连接某一个数据库的操作

创建数据库bbb且owner为用户b:postgres9.6@[local]:5432postgres#createdatabasebbbownerb;CREATEDATABASETime:259.099ms默认情况下使用用户c也可以连接数据库bbb:postgres9.6@[local]:5432...

2021-04-05 225 0 0 阅读全文

Postgresql 中的To_Char()常用操作

postgresql中的to_char()用法和Oracle相比,多了一个参数。to_char(待转换值,转换格式);常用转换格式有2种:一个是写若干个0,如果待转换的值位数少于于你定义的转换格式位数,输出值会自动在左边补0,位数补齐到转换格式的长度;如果待转换的值位数多于你定义的转换格式位数,输出...

2021-03-28 140 0 0 阅读全文

PostgreSQL 字符串处理与日期处理操作

字符串长度、大小写SELECTCHAR_LENGTH('test')--字符串长度SELECTLENGTH('test')LENGTH(string,encodingname)SELECTLENGTH('测试','UTF-8');LOWER(string)或者UPPER(string)--大小写AS...

2021-03-28 149 0 0 阅读全文

PostgreSQL字符切割:Substring函数的用法说明

作为当前最强大的开源数据库,Postgresql(以下简称pg)对字符的处理也是最为强大的,首先他也有substr,trim等其他数据库都有的普通函数,这里我们介绍他更强大的一个函数substring,可以像python,java等编程语言一样使用正则表达式,强大到极点在此之前我们先了解一下正则表达...

2021-03-28 176 0 0 阅读全文

PostgreSQL物理备份恢复之 Pg_Rman的用法说明

简介类似oracle的rman,用于postgres的备份与恢复下载https://github.com/ossc-db/pg_rman/tree/V1.3.9安装tarzxvfpg_rman*.tar.gzchownpostgres.postgres-Rpg_rman*su-postgrescdx...

2021-03-28 151 0 0 阅读全文

PostGreSql 判断字符串中是否有中文的案例

我就废话不多说了,大家还是直接看代码吧~实例imos=#select'hello'~'[\u2e80-\ua4cf]|[\uf900-\ufaff]|[\ufe30-\ufe4f]';?column?----------f(1row)imos=#imos=#select'hello中国'~'[\u2...

2021-03-28 158 0 0 阅读全文

PostgreSQL 自定义自动类型转换操作(CAST)

背景PostgreSQL是一个强类型数据库,因此你输入的变量、常量是什么类型,是强绑定的,例如在调用操作符时,需要通过操作符边上的数据类型,选择对应的操作符。在调用函数时,需要根据输入的类型,选择对应的函数。如果类型不匹配,就会报操作符不存在,或者函数不存在的错误。postgres=#select'...

2021-04-05 201 0 0 阅读全文

PostgreSQL报错 解决操作符不存在的问题

最近才接触到一个用PostgreSQL的项目,然后在开发的过程中发现了这样的一个问题。错误:操作符不存在:character=integer反正还有很多报错的,原因都是类型的转换问题。在mysql中似乎对类型这个概念不是那么敏感,而在PostgreSql中Integer、Long、Date、Stri...

2021-04-05 156 0 0 阅读全文

Postgresql 中Position函数的性能详解

起因:postgresql中position函数提供从头查找返回第一个匹配到字符串的下标。而我需要返回从后向前查找第一个匹配到的坐标,但是postgressql并未提供相关函数,所以自己写了如下代码提供相关功能:CREATEORREPLACEFUNCTIONlastindexof(text,char...

2021-03-28 136 0 0 阅读全文

PostgreSQL 恢复误删数据的操作

在Oracle中;删除表或者误删表记录;有个闪回特性,不需要停机操作,可以完美找回记录。当然也有一些其他的恢复工具;例如odu工具,gdul工具。都可以找回数据。而PostgreSQL目前没有闪回特性。如何在不停机情况下恢复误删数据。还好是有完整的热备份。本文描述的方法是:利用热备份在另一台服务器进...

2021-04-17 179 0 0 阅读全文

Postgresql 如何关闭自动提交

postgresql中默认是自动提交的查看是否是自动提交:postgres=#\echo:AUTOCOMMITon关闭自动提交:postgres=#\setAUTOCOMMIToffpostgres=#\echo:AUTOCOMMIToff另一种方式就在会话开始的时候以begin开始相当于关闭了自动...

2021-04-17 219 0 0 阅读全文

PostgreSQL ROW_NUMBER() OVER()的用法说明

语法:ROW_NUMBER()OVER([PRITITIONBYcol1]ORDERBYcol2[DESC])解释:ROW_NUMBER()为返回的记录定义个行编号,PARTITIONBYcol1是根据col1分组,ORDERBYcol2[DESC]是根据col2进行排序。举例:postgres=#...

2021-03-28 152 0 0 阅读全文

Postgresql 解决Pg掉电后无法重启的问题

机房断电后重启pg数据库,报如下错误:<2019-01-0122:42:59.240EST>LOG:databasesystemwasinterruptedwhileinrecoveryat2019-01-0122:00:58EST<2019-01-0122:42:59.240ES...

2021-04-17 200 0 0 阅读全文

基于Postgresql 事务的提交与回滚解析

用过oracle或mysql的人都知道在sqlplus或mysql中,做一个dml语句,如果发现做错了,还可以rollback;掉,但在PostgreSQL的psql中,如果执行一个dml,没有先运行begin;的话,一执行完就马上提交了,不能回滚,这样容易导致误操作的发生,有没有什么办法避免这个风...

2021-04-17 176 0 0 阅读全文

Postgresql 中的序列Nextval详解

一、postgresql中的序列1.1场景需求需要向下图一样,需要对产品编码编码设置一个序列。编码规则SKU+序列号:1.2序列序列是基于bigint算法的,因此范围是不能超过一个八字节整数的范围(-9223372036854775808到9223372036854775807)。由于nextval...

2021-03-28 161 0 0 阅读全文

PostgreSQL 序列绑定字段与不绑定字段的区别说明

序列绑定字段与不绑定字段的区别绑定字段构造数据dropsequenceifexiststest_id_seq;createsequencetest_id_seq;droptableifexiststest;createtabletest(idintdefaultnextval('test_id_se...

2021-03-28 138 0 0 阅读全文

Postgresql 索引之 Hash的使用详解

os:ubuntu16.04postgresql:9.6.8ip规划192.168.56.102node2postgresqlhelpcreateindexpostgres=#\hcreateindexCommand:CREATEINDEXDescription:defineanewindexSyn...

2021-03-28 135 0 0 阅读全文