返回首页

gbase数据、南大通用产品文档:GBase8sdttoasc() 函数

更新日期:2024年09月11日

dttoasc() 函数将 datetime 变量的字段值转换为符合 ANSI SQL 标准的 ASCII
字符串。
语法
mint dttoasc(dtvalue, outbuf)
dtime_t *dtvalue;
char *outbuf;
dtvalue
指向要转换的初始化了的 datetime 变量的指针。
outbuf
指向为 dtvalue 中的值接收 ANSI 标准 DATETIME 字符串的缓冲区的指针。

用法
dttoasc() 函数将 datetime 变量中的字段的数字转换为它们等同的字符,并将它们复
制至 outbuf 字符串,在它们之间带有定界符(连字符、空格、冒号或句号)。您必须以您
想要该字符串拥有的限定符来初始化 dtvalue 中的 datetime 变量。


GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 691 -
该字符串不包括 SQL 语句用于定界 DATETIME 文字的限定符或圆括号。 outbuf
字符串符合 ANSI SQL 标准。
它包括针对每一定界符的一个字符,
加上字段,
其大小如下:
字段
字段大小
Year
4 位
DATETIME 的部分
如精度所指定
所有其他字段
2 位

带有 year to fraction(5) 限定符的 datetime 值产生最大的输出长度。等同的字符串
包含 19 位、6 定界符以及空终止符,总计 26 字节:
YYYY-MM-DD HH:MM:SS.FFFFF

如果您未初始化 datetime 变量的限定符,则 dttoasc() 函数返回不可预料的值,但此
值不超过 26 字节。

返回代码
0
转换成功。
<0
转换失败。

示例

demo 目录在文件 dttoasc.ec 中包含此样例程序。
/*
* dttoasc.ec *
The following program illustrates the conversion of a datetime value into an ASCII string
in ANSI SQL format
*/

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 692 -

#include

EXEC SQL include datetime;

main()
{
char out_str[16];

EXEC SQL BEGIN DECLARE SECTION;
datetime year to hour dt1;
EXEC SQL END DECLARE SECTION;

printf("DTTOASC Sample ESQL Program running.\n\n");

/* Initialize dt1 */
dtcurrent(&dt1);

/* Convert the internal format to ascii for displaying */
dttoasc(&dt1, out_str);

/* Print it out*/
printf("\tToday's datetime (year to hour)value is %s\n", out_str);

printf("\nDTTOASC Sample Program over.\n\n");
}
输出
DTTOASC Sample ESQL Program running.

Today's datetime (year to hour) value is 2007-09-19 08

DTTOASC Sample Program over.


GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 693 -

javax.naming.spi.InitialContextFactory 是初始连接上下文工厂接口。
表8-13 对javax.naming.spi.InitialContextFactory 的支持情况
方法名
返回值类型
支持JDBC 4
getInitialContext(Hashtable?> environment)
Context
Yes

可配置 GBase 8s,以在各种业务情况中最大化可用性。
目标
策略
优点
潜在缺点
在服务器出现故障时
保护系统
使用与主服务器共享
磁盘空间的辅助服务
器。(共享磁盘辅助
服务器)

可用性极高。此
辅助服务器与主
服务器具有相同
的数据访问权。
如果主服务器出
现故障,辅助服
务器可快速接
管。

数据库始终处于
同步状态,因为
此辅助服务器与
主服务器具有相
同的数据访问
权。

无需更改应用程
序。服务器出现
故障时,可自动
切换客户机与主
服务器或辅助服
务器的连接。

此辅助服务器与
主服务器位于同
一台计算机上。

无数据冗余。此
辅助服务器不维
护数据副本。
(使用 SAN 设
备进行磁盘存
储。)

主辅助服务器和
辅助服务器需要
相同的硬件、操
作系统和数据库
服务器产品版
本。

辅助服务器硬件
必须可以处理与
主服务器相同的
负载。如果辅助
服务器过小,可

GBase 8s 管理员指南
南大通用数据技术股份有限公司
- 349 -
能会影响主服务
器的性能。
在站点出现故障时进
行保护

使用维护数据库
服务器和数据副
本的辅助服务
器。(高可用性
数据复制服务
器)

(也可使用 RSS
和 ER)

可用性极高。应
用程序如果不能
连接到主服务
器,可快速访问
此服务器。

数据同步复制。

提高了可伸缩性

无需更改应用程


位于主服务器本


需要数据的精确
副本(包括表和
数据库模式)。

主辅助服务器和
辅助服务器需要
相同的硬件、操
作系统和数据库
服务器产品版
本。
多级别站点故障保护 •
使用地理上远离
主服务器且从主
服务器异步更新
的辅助服务器。
(远程独立辅助
服务器)

(也可使用
ER)

可用性极高。应
用程序如果不能
连接到主服务
器,可快速访问
此服务器。

数据异步复制。

提高了可伸缩性

无需更改应用程


站点故障保护实现的
地理分散处理
ER 和 HDR
ER 和 ER 的备份
需要多个连接管理器