You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PostgreSQL命令执行异常求助:psql及SQL查询报错

解决psql中'more'命令未识别的问题

问题原因

psql在Windows环境下默认使用more作为分页工具,当系统环境变量找不到more命令,或当前控制台(如PowerShell)对该命令兼容性不足时,就会触发报错。

解决方案

1. 切换至Command Prompt执行psql

PowerShell对部分DOS命令的兼容性弱于传统命令提示符(cmd),打开cmd后执行psql -U postgres,输入密码后再尝试\h或SQL命令,多数情况可正常运行。

2. 修改psql默认分页器

若想继续在PowerShell中使用,可将分页器替换为Windows兼容工具:

  • 临时生效:在psql会话内执行
    \set PAGER 'type'
    
  • 永久生效:找到PostgreSQL安装目录下的psqlrc.sample(通常在C:\Program Files\PostgreSQL\16\share),复制一份并重命名为psqlrc,在文件中添加一行:
    \set PAGER 'type'
    

3. 修复系统环境变量

确保C:\Windows\System32路径存在于系统环境变量Path中(more.exe默认存放于此),若缺失则手动添加后重启控制台。

另外,针对控制台代码页警告,可在启动psql前执行以下命令切换代码页:

chcp 1252

避免8位字符显示异常。


内容的提问来源于stack exchange,提问作者c4xp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 19:00:56