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

大象资讯 | IvorySQL 3.3 发版

原创 严少安 2024-07-11
226

iv33.png

IvorySQL 3.3 于 2024.07.11 日发版,该版本基于 PostgreSQL 16.3,修复若干问题。

IvorySQL 是一款以 PostgreSQL 为基础进行开发,并且兼容 Oracle 的开源数据库。该项目是在 Apache 2.0 许可证下发布的,社区鼓励且欢迎所有类型的贡献和参与。

IvorySQL 3.3 增强:

  1. 将 pg_stats_ext 和 pg_stats_ext_exprs 条目的可见性限制为表所有者。
  2. 修复将多个 VALUES 行插入到作为数组或复合类型域的目标列中的问题。
  3. 对于带有 DO NOTHING 子句的 MERGE 语句,要求对目标表具有 SELECT 权限。
  4. 修复处理 MERGE 中自我修改元组的问题。
  5. 修复当表按 boolean 列分区且查询中包含布尔 IS NOT 子句时错误地修剪 NULL 分区的问题。

IvorySQL 3.3 问题修复:

  • 修复使用 SYSDATE 作为日期默认值时的问题 #633
  • 修复使用 SYSTIMESTAMP 作为日期默认值时的问题 #661
  • 修复 nls mask 时间戳精度问题 #634
  • 为 ivorysql.datetime_ignore_nls_mask 参数添加更多测试用例 #657
  • 修复兼容模式下使用 timestamp(7) 类型返回错误问题 #658
  • 数据类型 VARCHAR2 问题的支持 #652
  • 解决 docker_library 项目中,有关 IvorySQL 的相关问题 #4

编译安装 IvorySQL 3.3 后,查看版本信息。

[ivorysql@ivorysql3 ~]$ psql
psql (16.3-ShawnYan)
Type "help" for help.

ivorysql=# select version();
                                                             version
----------------------------------------------------------------------------------------------------------------------------------
 PostgreSQL 16.3-ShawnYan (IvorySQL 3.3) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 11.4.1 20231218 (Red Hat 11.4.1-3), 64-bit
(1 row)

ivorysql=# \l
                                                   List of databases
   Name    |  Owner   | Encoding | Locale Provider | Collate |  Ctype  | ICU Locale | ICU Rules |   Access privileges
-----------+----------+----------+-----------------+---------+---------+------------+-----------+-----------------------
 ivorysql  | ivorysql | UTF8     | libc            | C.UTF-8 | C.UTF-8 |            |           |
 postgres  | ivorysql | UTF8     | libc            | C.UTF-8 | C.UTF-8 |            |           |
 template0 | ivorysql | UTF8     | libc            | C.UTF-8 | C.UTF-8 |            |           | =c/ivorysql          +
           |          |          |                 |         |         |            |           | ivorysql=CTc/ivorysql
 template1 | ivorysql | UTF8     | libc            | C.UTF-8 | C.UTF-8 |            |           | =c/ivorysql          +
           |          |          |                 |         |         |            |           | ivorysql=CTc/ivorysql
(4 rows)
复制

ivorysql.datetime_ignore_nls_mask 测试用例

datetime_ignore_nls_mask:默认值为0,表示不屏蔽任何类型,所有时间格式均由nls格式化。

ivorysql=# set ivorysql.compatible_mode to oracle;
SET
ivorysql=# show nls_date_format;
 nls_date_format 
-----------------
 YYYY-MM-DD
(1 row)

ivorysql=# show ivorysql.datetime_ignore_nls_mask;
 ivorysql.datetime_ignore_nls_mask 
-----------------------------------
 0
(1 row)

ivorysql=# create table t(a int, c date);
CREATE TABLE
ivorysql=# insert into t values(1, '2024/07/11');
INSERT 0 1
ivorysql=# table t;
 a |     c      
---+------------
 1 | 2024-07-11
(1 row)
ivorysql=# set nls_date_format to 'yy-mm-dd';
SET
ivorysql=# insert into t values(2, '24/07/11');
INSERT 0 1
ivorysql=# insert into t values(2, '2024/07/11');
INSERT 0 1
ivorysql=# insert into t values(2, '2024-07-11');
INSERT 0 1
ivorysql=# table t;
 a |    c     
---+----------
 1 | 24-07-11
 2 | 24-07-11
 2 | 24-07-11
 2 | 24-07-11
(4 rows)
复制

设定datetime_ignore_nls_mask为1,表示date类型不经过nls格式化。

ivorysql=# set ivorysql.datetime_ignore_nls_mask=1;
SET
ivorysql=# show ivorysql.datetime_ignore_nls_mask;
 ivorysql.datetime_ignore_nls_mask 
-----------------------------------
 1
(1 row)

ivorysql=# insert into t values(2, '24/07/11');
LINE 1: insert into t values(2, '24/07/11');
                                ^
HINT:  Perhaps you need a different "datestyle" setting.
ivorysql=# insert into t values(2, '2024/07/11');
INSERT 0 1
复制

更多 IvorySQL 3 的内容参见:

🌻 往期精彩 ▼


– / END / –

👉 这里可以找到我

如果这篇文章为你带来了灵感或启发,就请帮忙点『』or『在看』or『转发』吧,感谢!ღ( ´・ᴗ・` )~

最后修改时间:2024-07-11 18:41:14
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论

ALFNAE
暂无图片
8月前
评论
暂无图片 0
IvorySQL 3.3 于 2024.07.11 日发版,该版本基于 PostgreSQL 16.3,修复若干问题
8月前
暂无图片 点赞
评论
小草
暂无图片
8月前
评论
暂无图片 0
大象资讯 | IvorySQL 3.3 发版
8月前
暂无图片 点赞
评论
张芝
暂无图片
8月前
评论
暂无图片 0
大象资讯 | IvorySQL 3.3 发版该版本基于 PostgreSQL 16.3
8月前
暂无图片 点赞
评论
zy
暂无图片
8月前
评论
暂无图片 0
IvorySQL 3.3 发版,该版本基于 PostgreSQL 16.3
8月前
暂无图片 点赞
评论
yBmZlQzJ
暂无图片
8月前
评论
暂无图片 0
IvorySQL 3.3 发版,该版本基于 PostgreSQL 16.3
8月前
暂无图片 点赞
评论
陈国正
暂无图片
8月前
评论
暂无图片 0
IvorySQL 3.3 发版,该版本基于 PostgreSQL 16.3
8月前
暂无图片 点赞
评论
查看更多 >