一、Postgresql连接不释放原因
在postgresql数据库之中进行连接的 *** 作实际上是客户端与服务器之间建立起了tcp socket的连接,但是因为tcp其实是一个虚连接的原因,这就导致了如果两端有任意一个是以非常方式关闭的话就会出现连接一直保持无法关闭的情况,那么解决方法的话去关闭这个连接就可以了。
二、Postgresql连接不释放解决方法
打开任务资源管理器,在其中找到postgresql数据库的进程并且记住其进程号,然后打开命令行。在命令行提示符里使用命令去强行关闭这个进程,示例如下:
kill -s SIGTERM 进程号
命令执行完毕后造成postgresql数据库一直保持死连接的进程就被关闭掉了,那么postgresql数据库也就可以正常关闭了。这种方式只有在数据库的所有 *** 作都执行完毕时才好使用,否则会将postgresql数据库的整个进程都关闭掉,有可能造成数据丢失的问题。
以上就是关于“Postgresql数据库连接无法释放怎么办?这几个方法都可以解决问题”的全部内容了,想要了解更多python的实用知识和代码示例可以持续关注这个频道,每次更新都会有很多新的知识技术分享给大家。
多行转一行CREATE TABLE TestTitle (
name VARCHAR(10),
title VARCHAR(20)
)
INSERT INTO TestTitle VALUES ('张三', '程序员')
INSERT INTO TestTitle VALUES ('张三', '系统管理员')
INSERT INTO TestTitle VALUES ('张三', '网络管理员')
INSERT INTO TestTitle VALUES ('李四', '项目经理')
INSERT INTO TestTitle VALUES ('李四', '系统分析员')
SELECT
name,
array_to_string(ARRAY(SELECT unnest(array_agg(title))),',') AS allTitle
FROM
TestTitle
GROUP BY
name
name | alltitle
------+------------------------------
李四 | 项目经理,系统分析员
张三 | 程序员,系统管理员,网络管理员
(2 行记录)
或者
SELECT
name,
string_agg(title,',') AS allTitle
FROM
TestTitle
GROUP BY
name
name | alltitle
------+------------------------------
李四 | 项目经理,系统分析员
张三 | 程序员,系统管理员,网络管理员
(2 行记录)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)