news 2026/5/22 14:47:33

GBase 8s JDBC 参数 GL_DATETIME 介绍

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
GBase 8s JDBC 参数 GL_DATETIME 介绍

在数据库开发中,日期和时间的格式化是一个常见的需求。GBase 8s 提供了 GL_DATETIME 环境变量,用于控制日期和时间的显示和插入格式。本文将介绍 GL_DATETIME 参数的使用方法,特别是其在 JDBC 中,通过实际示例展示其效果。

GL_DATETIME 是一个环境变量,用于控制日期和时间的显示和插入格式。它在 dbaccess 和 JDBC 中都有应用,但在 JDBC 中有一些特殊的行为。本文将重点介绍这些差异,并提供实际应用示例。

create table t1 (c datetime year to fraction(5));


和dbaccess区别


JDBC的GL_DATETIME既影响显示,还影响插入,加USE_DTENV=1才生效


(1)dbaccess:

可见,dbaccess查询的结果集是按 GL_DATETIME 显示的,但是插入时不能按GL_DATETIME格式插入,必须export USE_DTENV=1,才可以。

(2)JDBC
jdbc:gbasedbt-sqli://192.168.226.180:12888/test:DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;GL_DATETIME=%Y/%m/%d %H:%M:%S.%F5; stmt.executeUpdate("insert into t1 values('2021-05-21 10:20:30.12345')"); rs = stmt.executeQuery("select * from t1"); while (rs.next()) { System.out.println(rs.getString(1)); }

插入格式,不符合GL_DATETIME,但是可以插入,所以插入时GL_DATETIME没生效
查询结果:2021-05-21 10:20:30.12345,可见GL_DATETIME也没生效

jdbc:gbasedbt-sqli://192.168.226.180:12888/test:DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;GL_DATETIME=%Y/%m/%d %H:%M:%S.%F5; USE_DTENV=1

插入那行,必须按GL_DATETIME格式,否则抛异常
stmt.executeUpdate("insert into t1 values('2021/05/21 10:20:30.12345')");

查询结果:2021/05/21 10:20:30..12345,按GL_DATETIME格式

JDBC显示%Fn有问题


上边显示的2021/05/21 10:20:30..12345,多1个“.”不是多敲,是JDBC的问题
如果GL_DATETIME=%Y/%m/%d %H:%M:%S%F5,也就是去掉%S和%F5之间的“.”
输出就是:2021/05/21 10:20:30.12345
dbaccess没这个问题

不指定GL_DATETIME时,显示小数点后0个数不同

insert into t1 values('2021-05-21 10:20:30');


(1)dbaccess
2021-05-21 10:20:30.00000
(2)JDBC
2021-05-21 10:20:30.0
如果指定GL_DATETIME=%Y/%m/%d %H:%M:%S%.F3,小数点后边就都是3个0

多语言支持


中文
JDBC参数:DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;GL_DATETIME=%b
rs.getString:五月

英文
JDBC参数:DB_LOCALE=en_US.utf8;CLIENT_LOCALE=en_US.utf8;GL_DATETIME=%b
rs.getString:May

通过本文的介绍,你已经了解了 GBase 8s 中 GL_DATETIME 参数的使用方法,希望这些内容能帮助你在实际开发中更好地利用这一功能。如果你在使用过程中遇到任何问题,欢迎随时在社区中提问,我们在这里为你提供支持!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/16 20:14:07

Pyenv which-python定位当前使用的解释器路径

精准定位Python解释器路径:从pyenv到容器环境的全链路实践 在现代AI与数据科学项目中,一个看似简单的问题却常常让开发者陷入困境——“我到底用的是哪个Python?”这个问题背后,往往隐藏着版本冲突、依赖错乱、甚至模型训练结果无…

作者头像 李华
网站建设 2026/5/22 3:09:39

LMMS音乐制作完全指南:从零基础到专业级作品创作

LMMS音乐制作完全指南:从零基础到专业级作品创作 【免费下载链接】lmms Cross-platform music production software 项目地址: https://gitcode.com/gh_mirrors/lm/lmms 你是否曾经梦想创作属于自己的音乐,却苦于昂贵的专业软件和复杂的技术门槛&…

作者头像 李华
网站建设 2026/5/12 1:33:18

Flash Linear Attention实战指南:基于flame框架的3步高效训练方案

Flash Linear Attention实战指南:基于flame框架的3步高效训练方案 【免费下载链接】flash-linear-attention Efficient implementations of state-of-the-art linear attention models in Pytorch and Triton 项目地址: https://gitcode.com/GitHub_Trending/fl/f…

作者头像 李华
网站建设 2026/5/3 10:43:03

3步搞定智能文档转换:Dify.AI可视化工作流完整教程

3步搞定智能文档转换:Dify.AI可视化工作流完整教程 【免费下载链接】dify 一个开源助手API和GPT的替代品。Dify.AI 是一个大型语言模型(LLM)应用开发平台。它整合了后端即服务(Backend as a Service)和LLMOps的概念&am…

作者头像 李华
网站建设 2026/5/10 19:05:19

Libertinus字体完全指南:为什么说它是开源排版的终极选择?

在数字时代,优秀的字体设计往往决定了文档的专业程度和阅读体验。今天,我要向大家推荐一个在开源字体领域堪称完美的解决方案——Libertinus字体家族。这套字体不仅继承了Linux Libertine的经典基因,更在数学排版、屏幕显示等方面实现了全面突…

作者头像 李华
网站建设 2026/5/14 3:54:49

Centrifuge Go语言实时通信库:构建高性能WebSocket应用

Centrifuge Go语言实时通信库:构建高性能WebSocket应用 【免费下载链接】centrifuge Real-time messaging library for Go. The simplest way to add feature-rich and scalable WebSocket support to your application. The core of Centrifugo server. 项目地址…

作者头像 李华