签到成功

知道了

CNDBA社区CNDBA社区

openGauss 数据库 兼容类型(DBCOMPATIBILITY ) 说明

2023-03-10 20:44 4050 0 原创 openGauss
作者: dave

OpenGauss中创建数据库的代码如下:http://www.cndba.cn/dave/article/116479

CREATE DATABASE database_name 
[ [ WITH ] { [ OWNER [=] user_name ] | 
[ TEMPLATE [=] template ] | 
[ ENCODING [=] encoding ] | 
[ LC_COLLATE [=] lc_collate ] | 
[ LC_CTYPE [=] lc_ctype ] | 
[ DBCOMPATIBILITY [=] compatibilty_type ] | 
[ TABLESPACE [=] tablespace_name ] | 
[ CONNECTION LIMIT [=] connlimit ]}[...] ];

我们这里需要关注2个参数:ENCODING 和 DBCOMPATIBILITY 。http://www.cndba.cn/dave/article/116479http://www.cndba.cn/dave/article/116479

http://www.cndba.cn/dave/article/116479
http://www.cndba.cn/dave/article/116479

  1. ENCODING 表示字符集编码,不指定时,默认使用模版数据库的编码。模板数据库template0和template1的编码默认与操作系统环境相关。template1不允许修改字符编码,因此若要变更编码,需要使用template0创建数据库。生产环境建议使用UTF-8编码。
  2. DBCOMPATIBILITY 表示兼容性,指定兼容的数据库的类型,默认兼容O。 openGauss支持A、B、C和PG四种兼容模式,分别表示兼容Oracle、MySQL、Teradata(TD)和PostgreSQL。但是C目前已经放弃支持。因此常用的取值是A、B、PG,不同兼容模式下的语法行为存在一定差异,默认为A兼容模式。
openGauss=# CREATE DATABASE cndba dbcompatibility = 'A';

openGauss=# CREATE DATABASE ustc dbcompatibility = 'C';

初始时,openGauss包含两个模板数据库template0、template1,以及一个默认的用户数据库postgres。postgres默认的兼容数据库类型为O(即 DBCOMPATIBILITY = A ),该兼容类型下将空字符串作为NULL处理。 不同的兼容性最常用的就是对空值的处理,目前兼容最好的还是pg。http://www.cndba.cn/dave/article/116479

注意:
1.A兼容性下,数据库将空字符串作为NULL处理,数据类型DATE会被替换为TIMESTAMP(0) WITHOUT TIME ZONE。
2.将字符串转换成整数类型时,如果输入不合法,B兼容性会将输入转换为0,而其它兼容性则会报错。
3.PG兼容性下,CHAR和VARCHAR以字符为计数单位,其它兼容性以字节为计数单位。 例如,对于UTF-8字符集,CHAR(3)在PG兼容性下能存放3个中文字符,而在其它兼容性下只能存放1个中文字符。 http://www.cndba.cn/dave/article/116479http://www.cndba.cn/dave/article/116479http://www.cndba.cn/dave/article/116479

http://www.cndba.cn/dave/article/116479

版权声明:本文为博主原创文章,未经博主允许不得转载。

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
dave

dave

关注

人的一生应该是这样度过的:当他回首往事的时候,他不会因为虚度年华而悔恨,也不会因为碌碌无为而羞耻;这样,在临死的时候,他就能够说:“我的整个生命和全部精力,都已经献给世界上最壮丽的事业....."

  • 2237
    原创
  • 3
    翻译
  • 546
    转载
  • 186
    评论
  • 访问:6597552次
  • 积分:4242
  • 等级:核心会员
  • 排名:第1名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ