自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

杀不死我的终将使我强大

期盼未来,勇敢向前!

  • 博客(22)
  • 收藏
  • 关注

原创 postgresql兼容mysql last_insert_id()

PG 中有类似的用法,INSERT INTO student1() VALUES () RETURNING id;就像这样。如果不想改代码,可以直接在PG 数据库封装一个同名函数,使用lastval()实现:lastval() bigint 返回最近一次用 nextval 获取任何序列的数值。自定义函数:create or replace function last_insert_id() returns int4 as$$begin return lastval();end ;

2022-01-04 09:55:04 2203

原创 postgresql实现oracle系统视图user_sequences

序列:USER_SEQUENCES(SEQ)要显示序列的属性,可以查询USER_SEQUENCES 数据字典视图。该视图也能用公有同义词SEQ 进行查询。USER_SEQUENCES 视图的列如下所示:Sequence_Name 序列名Min_Value 序列的最小值Max_Value 序列的最大值Increment_By 序列值之间的增量Cycle_Flag 一个标志,一旦达到Max_Value 值,用来表明该值能否再循环回Min_Value 值Order_Flag 一个标志,用来表明序列号

2021-06-01 14:26:33 651 1

转载 解决后台时间数据正确,但传到前端显示与后台相差8个小时问题

我在数据库中存储的数据是正确的:后台查询到的数据也是正确的:但是传到前端,显示出来的却与后台要传的数据相差了8个小时经网上网友的解释:由于我们使用的是SpringBoot框架,SpringBoot中对于@RestController或者@Controller+@ResponseBody注解的接口方法的返回值默认是Json格式,所以对于data类型的数据,在返回浏览器段被SpringBoot默认的JackJson框架转换,而JackSon框架默认的时区是GMT,相对于中国少了8个小时。解决办法

2021-04-27 11:13:23 2779

转载 PostgreSQL mysql 兼容性之 - 字符编码转换 CONVERT

PostgreSQL mysql 兼容性之 - 字符编码转换 CONVERT技术标签: 数据库 记录PostgreSQL 字符集转换方法postgresql支持的转换函数如下:mysql中的blob类型在pgsql中以bytea类型替代,但是在解析bytea格式的时候mysql使用convert函数来转换。而在pgsql中使用convert_from, convert_to或者直接使用convert即可完成Oracle convert的功能。例如如果像返回依旧是bytea的话:selec

2021-04-22 10:09:25 2891

原创 postgresql逻辑备份恢复方案

一、在PG数据库中,备份可分逻辑备份和物理备份,这里我们主讲逻辑备份,通过pg_dump备份。1、实例全备,pg_dumpall命令,通过调用pg_dump命令。本质是一样的。不过pg_dumpall命令会备份包括表空间和用户。都可以备份自定义的隐式转换和操作符。命令:备份Pg_dumpall –U sysdba > aaa.out输入密码次数跟数据库数量有关,几个库就需要输入几次密码恢复:Psql –U sysdba < aaa.out说明:实例备份进行备份时,需要输入多次密

2021-03-03 16:36:11 304 1

原创 postgresql etc功能改写Oracle start with connect by递归功能

目前已做修改的三种例子:1、start with connect by改写SELECTt.*FROMpub_organ t,(SELECTorgan_idFROM(–原来的写法– SELECT– p.organ_id,– p.organ_type– FROM– pub_organ p START WITH p.organ_id = ‘370000’ CONNECT BY PRIOR p.organ_id = p.parent_id改写成PG的: with

2021-01-27 18:14:58 3438

转载 PostgreSQL之pgdump备份恢复

逻辑备份在恢复时,介于逻辑备份与故障时间点之间的数据难以恢复,故一般不采取逻辑备份方式进行数据库备份,但逻辑适用于跨平台跨版本的数据迁移;逻辑备份恢复主要以下三种:pg_dumppg_dumpallcopy本小节主要讲解pg_dumppg_dump备份只能备份单个数据库,不会导出角色和表空间相关的信息-F c 备份为二进制格式,压缩存储.并且可被pg_restore用于精细还原-F p 备份为文本,大库不推荐pg_dump恢复psql dbname -U username < b

2021-01-12 15:36:30 2804

原创 postgresql兼容MySQL datediff函数

datediff函数兼容解决方案datediff函数说明datediff函数返回俩日期相差的天数,如select datediff(‘2021-12-21 10:21:23’,now())在postgresql中,我们使用date_part函数来返回俩日期之间的天数date_part函数使用方法:date_part(text,timestamp) double precision 获取子域(等效于extract);date_part(‘hour’,timestamp ‘2001-02-162

2021-01-05 10:36:38 3256

原创 posthresql兼容Oracle dual虚表

Postgresql中没有 dual 虚拟表,为保证兼容性,需创建伪视图(view)代替:create or replace view dual asselect NULL::"unknown"where 1=1;alter table dual owner to postgres;grant all on table dual to postgres;grant select on table dual to public;...

2021-01-05 09:45:37 739

原创 postgresql兼容MySQL 时间函数date_format

MySQL DATE_FORMAT() 函数定义和用法DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。语法DATE_FORMAT(date,format)date 参数是合法的日期。format 规定日期/时间的输出格式。在postgresql创建同名函数实现相同的功能CREATE OR REPLACE FUNCTION date_format(indate anyelement, intext text) RETURNS text LANGUAGE plpgsqlA

2021-01-05 09:40:53 4754 2

原创 postgresql备份恢复讲解

HGDB备份方式主要分为两种:逻辑备份pg_dump, pg_dumpall物理备份文件系统复制(冷备份)数据库的 PITR 方法(热备份)备份方式如何选择?逻辑备份在恢复时,介于逻辑备份与故障时间点之间的数据难以恢复,故一般不采取逻辑备份方式进行数据库备份,适用于跨平台跨版本的数据迁移;物理备份包含冷备份和热备份,冷备份需要停数据库,这在正常的业务应用中是不现实的,故一般采用的是物理备份的热备份。逻辑备份逻辑备份可通过指令pg_dump, pg_dumpall实现基本语法:– pg

2020-12-25 10:42:59 331

原创 postgresql兼容MySQL on update current_timestamp

问题描述PostgreSQL执行Insert语句时,自动填入时间的功能可以在创建表时实现,但更新表时时间戳不会自动自动更新。在mysql中可以在创建表时定义自动更新字段,比如 :create table ab (id int,changetimestamp timestampNOT NULLdefault CURRENT_TIMESTAMPon update CURRENT_TIMESTAMP);那PostgreSQL中怎么操作呢?解决方案通过触发器实现,具体如下:create o

2020-12-24 17:23:07 3479 1

原创 postgresql兼容MySQL if函数

if函数说明:在mysql中if()函数的用法类似于java中的三目表达式,其用处也比较多,具体语法如下:IF(expr1,expr2,expr3),如果expr1的值为true,则返回expr2的值,如果expr1的值为false,则返回expr3的值postgresql自定义if函数兼容:create or replace function if(bln boolean,inValue1 anyelement,inValue2 anyelement)returns anyelement as

2020-12-24 17:19:14 7824 1

原创 postgresql兼容Oracle dbms_output.put_line

Oracle dbms_output.put_line用于输出打印信息postgresql使用raise notice打印信息改写例子:Oracle原写法DBMS_OUTPUT.PUT_LINE('PROCEDURE [P_ASD] BEGIN … ’ || TO_CHAR(SYSDATE, ‘YYYY-MM-DD HH24:MI:SS’));postgresql改写:raise notice ‘PROCEDURE [P_ASD] BEGIN …%’ , TO_CHAR(SYSDATE, ‘Y

2020-12-24 17:12:56 1319 1

转载 postgresql时间、日期函数

postgresql——日期时间函数http://www.voidcn.com/article/p-zuvpjgnd-bsd.html

2020-12-24 17:07:22 274 1

原创 记--Qt安装使用篇

问题:qt no valid kits found解决:卸载重新安装,选择组件时全选,第一次由于占用空间大,所以Qt选线就没选,导致出现没有可用的kits问题。重装后全选组件,问题解决。

2020-10-13 10:37:35 98

原创 瀚高数据库基于时间点和还原点恢复的PITR技术实践整理

一、PITR技术简介基于时间点的恢复(PITR)简介数据库的PITR是一般数据库都必须满足的技术;其原理是依据之前的物理备份文件加上wal的预写日志模式备份做的恢复;该技术支持8.*及以上版本。恢复原理:基础备份+归档日志执行指定时间点还原点的恢复二、实践步骤1、前期准备1.1创建备份目录切换至root用户mkdir -p /data/pg10/backupsmkdir -p...

2020-05-29 14:22:13 586 2

原创 Linux环境下编译C语言使用libpq连接postgresql/HighGo数据库

一、 测试环境数据库版本:psotgresql10虚拟机环境:centos 7编译器:gcc二、 环境搭建1、 如果系统没有gcc编译器,可以使用yum install gcc安装。三、 编写文档1、 使用vim编写.c文件注意:文件名须是.c文件2、 使用gcc编译gcc -c -I/home/liushun/highgo/include t_test.c-I后面要指定in...

2020-05-08 13:14:45 389

原创 Windows下使用C语言连接postgresql数据库

方法一:可以像在Linux下直接用gcc编译。1、使用文本编辑文档,重命名文档为.c格式。2、使用gcc –c –I编译.c文件。D:\Dev-Cpp\编程文件>gcc -c -I /D:/highgo/database/5.6.4/include main.c3、使用gcc –o 生成.exe可执行文件,并且使用-L指定lib目录,注意使用参数-lpq。D:\Dev-Cpp\编程...

2020-05-08 10:53:18 753

原创 libpq简介

一、简介Libpq 是应用程序员使用 HGDB 的 C 接口。libpq 是一个库函数的集合,它们允许客户端程序传递查询给 HGDB 后端服务器并且接收这些查询的结果。libpq库是PostgreSQL的C接口。它是一组库函数,允许客户端程序与PostgreSQL交互。它也是其他PostgreSQL应用程序接口的基础引擎,包括为C++、Perl、PHP、Ruby、Python和Tcl编写的应用...

2020-05-08 10:36:06 5701

原创 F_JC0054: Unable to open the Service Control Manager. Error: Access is denied.

环境信息:本地Windows10下Oracle11g远端hub:win7 Oracle11g错误信息:hvr用远程机器当做hub,创建Windows服务时报错:F_JC0054: Unable to open the Service Control Manager. Error: Access is denied.问题所在:根据错误信息可以分析得知,进入被拒绝,那么错误产生的原因可能...

2020-04-22 16:16:27 705

原创 startup 出现的监听错误或者未初始化服务句柄,ORA-24324: 未初始化服务句柄,ORA-01041: 内部错误, hostdef 扩展名不存在

环境信息:Windows下Oracle11g症状描述:在shutdown关闭后,startup nount出错。SQL> shutdown normal数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> startup mountORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务SQL> startup mountO...

2020-04-20 14:46:48 1031

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除