PostgreSQL 数据库大小写规则

PostgreSQL 数据库对大小写的处理规则如下:

  1. 严格区分大小写
  2. 默认把所有 SQL 语句都转换成小写再执行
  3. 加双引号的 SQL 语句除外

如果想要成功执行名称中带有大写字母的对象,则需要把对象名称加上双引号。

验证如下:

想要创建数据库 IZone,明明已存在的数据库名为 izone,却报错:数据库已存在。

说明:PostgreSQL 数据库默认把所有 SQL 语句都转换成小写再执行。

PostgreSQL 数据库大小写规则_第1张图片

若为名称 IZone 加上双引号,则执行成功。

PostgreSQL 数据库大小写规则_第2张图片

想要删除数据库 IZone,出现常见报错:

ERROR: 错误:  其他用户正在使用数据库 "IZone"
DETAIL:  那里有1个其它会话正在使用数据库.


SQL 状态: 55006

PostgreSQL 数据库大小写规则_第3张图片

执行下面三行代码终止连接进程:

SELECT pg_terminate_backend(pg_stat_activity.pid)
FROM pg_stat_activity
WHERE datname='IZone' AND pid<>pg_backend_pid();

注意这里使用的是单引号。

PostgreSQL 数据库大小写规则_第4张图片

理应返回一个 boolean 值的却没有,但是最后又删除成功了(?)

再次删除,执行成功。

PostgreSQL 数据库大小写规则_第5张图片

plus:查看 “视图” pg_stat_activity 。

PostgreSQL 数据库大小写规则_第6张图片

综上,建议以后都用小写。


参考博客:关于PostgreSQL数据库的大小写_pg 大小写_qq844385029的博客-CSDN博客

你可能感兴趣的:(数据库原理与实践,学习,数据库,sql,postgresql)