暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

PostgreSQL 与 MogDB/openGauss 之 关键字

日常数据库运维的过程中可能对数据库关键字关注点并不是很高,但在程序开发的过程中,数据库对象建模要尽可能的避开数据库关键字的使用,否则在后续开发过程中需要用到各种转译的方法来将关键字转换为普通字符,会非常的麻烦。最近在MogDB上执行date函数后报语法错误,经查询openGauss是支持date函数的,但却用不了,真对这个问题,分别在postgresql12.2数据库和opengauss(1.0.1)数据库进行问题复现并问题分析

在openGauss执行结果如下:
image.png

在PostgreSQL执行date函数结果如下:
image.png

经调查发现是date关键字的问题
在openGauss的关键字列表中,虽然不是保留关键字,但是不允许是函数或者类型
image.png
在PostgreSQL的关键字列表中,是一个普通字符
image.png

由此问题进行深入思考,对比PostgreSQL与openGauss数据库中哪些关键字做了差异化说明,避免在日常使用中再次遇到类似问题

PostgreSQL openGauss
AUTHID 保留
BUCKETS 保留
COMPACT 保留
DATE 非保留(不能是函数或类型)
DELTAMERGE 保留
EXCLUDED 保留
FENCED 保留
GROUPING 非保留(不能是函数或类型)
HDFSDIRECTORY 保留
IS reserved (can be function or type) 保留
ISNULL reserved (can be function or type) 非保留
LATERAL reserved
LESS 保留
MAXVALUE non-reserved 保留
MINUS 保留
MODIFY 保留
NLSSORT 保留
NUMBER 非保留(不能是函数或类型)
PERFORMANCE 保留
PROCEDURE non-reserved 保留
REJECT 保留
ROWNUM 保留
SYSDATE 保留
TABLESAMPLE reserved (can be function or type)
VERIFY 保留
XMLNAMESPACES non-reserved (cannot be function or type)
XMLTABLE non-reserved (cannot be function or type)
最后修改时间:2021-12-30 13:54:53
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论