在使用xDBC连接到字符集为US7ASCII的Oracle数据库时,大家可能遇到过中文的乱码问题,尤其是使用Oracle自己的xDBC驱动的时候。

字符集为US7ASCII的Oracle数据库虽然可以保存中文数据,但给客户端带来了很多麻烦,需要对获取和提交的数据进行转码。

 

在Ensemble/Health Connect/InterSystems IRIS 中使用SQL适配器连接到这样的Oracle数据库时,可以使用$ZCVT函数进行转码。

1. $ZCVT函数

$ZCVT函数是广泛使用的字符串转换函数,可以做大小写转换、编码转换、URL 和 URI 转换等。我们用其编码转换能力来解决字符集转码问题。

 

2. 获取的SQL结果集数据有中文时

30
0 1 20
文章
姚 鑫 · 二月 12, 2021 阅读大约需 2 分钟
第三十二章 Caché 变量大全 $ZJOB 变量

第三十二章 Caché 变量大全 $ZJOB 变量

包含JOB状态信息。

大纲

$ZJOB
$ZJ

描述

$ZJOB包含一个数字,其中每个位代表作业状态的一个特定方面。 $ZJOB返回一个整数,该整数由设置的状态位的总和组成。例如,如果$ZJOB = 5,则表示设置了1位和4位。

要测试单个$ZJOB位设置,可以使用整数除(\)和模(#)运算符。例如,$ZJOB\x#2,其中x是位号。下表显示了位的布局(按位的位置值)、其设置和含义:

00
0 1 15
文章
姚 鑫 · 二月 13, 2021 阅读大约需 2 分钟
第三十三章 Caché 变量大全 $ZMODE 变量

第三十三章 Caché 变量大全 $ZMODE 变量

包含当前I/O设备打开参数。

大纲

$ZMODE
$ZM

描述

$ZMODE包含使用OPENUSE命令为当前设备指定的参数。返回的字符串包含用于以规范形式打开当前I/O设备的参数。这些参数值由反斜杠分隔符分隔。TCP/IP IO上的开放参数(如“M”)被规范化为“PSTE”“Y”“K”参数值始终放在最后。

不能使用SET命令修改此特殊变量。尝试这样做会导致<SYNTAX>错误。

示例

以下示例使用$ZMODE返回当前设备的参数:

00
0 0 9
文章
姚 鑫 · 二月 14, 2021 阅读大约需 1 分钟
第三十四章 Caché 变量大全 $ZNAME 变量

第三十四章 Caché 变量大全 $ZNAME 变量

包含当前例程名称。

大纲

$ZNAME
$ZN

描述

$ZNAME包含在当前进程上执行的例程的名称。通常,这是ZLOAD加载的当前例程。如果当前没有执行任何例程,则$ZNAME包含空字符串。

当ZLOAD加载一个例程时,它将成为所有名称空间中当前进程的当前加载例程。因此,可以使用$ZNAME显示任何名称空间中当前加载的例程的名称,而不仅仅是加载该例程的名称空间。

例程名称区分大小写。

请注意,尝试ZLOAD例程失败会删除当前加载的例程,并将$ZNAME设置为空字符串。

不能使用SET命令修改此特殊变量。尝试这样做会导致错误。

$ZNAME值可以通过以下任何命令设置:

  • ZLOAD command
  • ZSAVE command
  • 无参数ZREMOVE命令(设置为空字符串)
  • DO command
  • GOTO command with ^routine
00
0 0 6
文章
姚 鑫 · 3 小时 前 阅读大约需 7 分钟
第二章 InterSystems SQL基础

第二章 InterSystems SQL基础

本章概述了InterSystems SQL的特性,特别是那些SQL标准未涵盖的特性,或者与InterSystems IRIS®数据平台统一数据架构相关的特性。
本教程假定读者具备SQL知识,并不是为介绍SQL概念或语法而设计的。

本章讨论以下主题:
- 表
- 查询
- 权限
- 数据显示选项
- 数据排序类型
- 执行SQL

在InterSystems SQL中,数据显示在表中。每个表都包含许多列。一个表可以包含零个或多个数据值行。以下术语大体上等效:

00
0 0 2
文章
Nicky Zhu · 一月 8, 2021 阅读大约需 3 分钟
InterSystems 数据平台容量计划和性能系列索引

索引

下文按顺序列出了数据平台上容量计划和性能系列中的所有帖子。 也列出了我的其他帖子。 我将随着该系列中新帖子的增加进行更新。


容量计划和性能系列

通常,每个帖子的内容都建立在上一个帖子的基础上,但您也可以直接浏览感兴趣的主题。

00
0 0 21
文章
姚 鑫 · 二月 15, 2021 阅读大约需 3 分钟
第三十五章 Caché 变量大全 $ZNSPACE 变量

第三十五章 Caché 变量大全 $ZNSPACE 变量

包含当前命名空间名称。

大纲

$ZNSPACE

描述

$ZNSPACE包含当前命名空间的名称。通过设置$ZNSPACE,可以更改当前名称空间。

要获取当前命名空间名称,请执行以下操作:

DHC-APP>SET ns=$ZNSPACE

DHC-APP>WRITE ns
DHC-APP

还可以通过调用%SYSTEM.SYS类的Namespace()方法来获取当前命名空间的名称,如下所示:

00
0 0 6
文章
Jeff Liu · 一月 7, 2021 阅读大约需 5 分钟
InterSystems 容器注册表介绍

非常高兴地宣布,InterSystems 容器注册表现在可以使用了。 这为客户访问基于容器的版本及预览提供了新的渠道。 所有的社区版像都可在公共存储库中找到,且无需登录。 所有完整发布的像(IRIS、IRIS for Health、Health Connect、System Alerting and Monitoring、InterSystems Cloud Manager)和实用程序镜像(例如,仲裁器、Web 网关和 PasswordHash)都需要登录令牌,该令牌从 WRC 帐户生成。

00
0 0 15
文章
姚 鑫 · 二月 16, 2021 阅读大约需 2 分钟
第三十六章 Caché 变量大全 $ZORDER 变量

第三十六章 Caché 变量大全 $ZORDER 变量

包含下一个全局节点的值。

大纲

$ZORDER
$ZO

描述

$ZORDER包含当前全局引用之后的下一个全局节点的值(在$QUERY序列中,而不是$ORDER序列中)。如果没有下一个全局节点,访问$ZORDER将导致<unfined>错误,指示$ZORDER成功访问的最后一个全局节点。

不能使用SET命令修改此特殊变量。尝试这样做会导致<SYNTAX>错误。

示例

下面的示例使用WHILE循环重复调用$ZORDER以遍历一系列下标节点:

00
0 0 9
文章
姚 鑫 · 二月 17, 2021 阅读大约需 1 分钟
第三十七章 Caché 变量大全 $ZPARENT 变量

第三十七章 Caché 变量大全 $ZPARENT 变量

包含当前进程的父进程的ID

大纲

$ZPARENT
$ZP

描述

$ZPARENT包含使用JOB命令创建当前进程的父进程的ID。如果当前进程不是使用JOB命令创建的,则$ZPARENT包含0(零)。

不能使用SET命令修改此特殊变量。尝试这样做会导致<SYNTAX>错误。

第三十八章 Caché 变量大全 $ZPI 变量

包含pi的值。

大纲

$ZPI

描述

$zpi包含数值常量Pi到小数点后18位的值(3.141592653589793238)。

该值经常用于三角函数,例如正弦函数$ZSIN

00
0 0 6
文章
Li Yan · 一月 11, 2021 阅读大约需 27 分钟
面向 Amazon Web Services (AWS) 的 InterSystems IRIS 示例参考架构

Amazon Web Services (AWS) 云提供广泛的云基础设施服务,例如计算资源、存储选项和网络,这些都非常实用:按需提供,几秒内就可用,采用即付即用定价的模式。 新服务可得到快速配置,且前期无需支出大量资金。 这使得大企业、初创公司、中小型企业以及公共部门的客户可以访问他们所需的基础设施,从而快速响应不断变化的业务需求。

 

更新日期:2019 年 10 月 15 日

00
0 0 17
文章
姚 鑫 · 二月 2, 2021 阅读大约需 3 分钟
第二十二章 Caché 变量大全 $X 变量

第二十二章 Caché 变量大全 $X 变量

包含光标的当前水平位置。

大纲

$X

描述

$X包含光标的当前水平位置。将字符写入设备时,Caché会更新$X以反映水平光标位置。

输出的每个可打印字符将$X加1。回车符(ASCII 13)或换页符(ASCII 12)将$X重置为0(零)。

$X是16位无符号整数。

00
0 0 7
文章
姚 鑫 · 二月 18, 2021 阅读大约需 6 分钟
第四十章 Caché 变量大全 $ZREFERENCE 变量

第四十章 Caché 变量大全 $ZREFERENCE 变量

包含当前全局变量global引用。

大纲

$ZREFERENCE
$ZR

描述

$ZREFERENCE包含上次全局引用的名称和下标。这就是所谓裸指针。

注意:最后一个全局引用是最近访问的全局节点。通常,这是对全局的最新显式引用。但是,某些命令可能在内部使用$ORDER函数遍历全局下标(ZWRITE命令就是一个例子),或者它们可能在内部引用其他全局脚本。发生这种情况时,$ZREFERENCE包含上次访问的全局节点,该节点可能不是为命令指定的全局节点。

00
0 0 9

本文提供了一个参考架构,作为示例说明基于 InterSystems Technologies(适用于 CachéEnsembleHealthShareTrakCare 以及相关的嵌入式技术,例如 DeepSeeiKnowZen Zen Mojo)提供的强大性能和高可用性应用。
Azure 有两种用于创建和管理资源的不同部署模型:Azure Classic Azure Resource Manager 本文中的详细信息基于 Azure Resource Manager (ARM) 模型。

00
0 0 15
文章
姚 鑫 · 二月 3, 2021 阅读大约需 2 分钟
第二十三章 Caché 变量大全 $Y 变量

第二十三章 Caché 变量大全 $Y 变量

包含光标的当前垂直位置。

大纲

$Y

描述

$Y包含光标的当前垂直位置。当字符写入设备时,Caché会更新$Y以反映垂直光标位置。

输出的每个换行符(换行符)(ASCII 10)将$Y递增1。换页符(ASCII 12)将$Y重置为0。

$Y是16位无符号整数。当其值达到65536时,$Y换行为0。换句话说,如果$Y为65535,则下一个输出字符将其重置为0。

00
0 0 11
文章
姚 鑫 · 二月 19, 2021 阅读大约需 2 分钟
第四十一章 Caché 变量大全 $ZSTORAGE 变量

第四十一章 Caché 变量大全 $ZSTORAGE 变量

包含进程的最大可用内存。

大纲

$ZSTORAGE
$ZS

描述

$ZSTORAGE包含JOB的进程私有内存的最大内存量(以KB为单位)。此内存可用于局部变量、堆栈和其他表。此内存限制不包括例程目标代码的空间。此内存根据需要分配给进程,例如在分配数组时。

一旦将此内存分配给进程,通常在该进程退出之前不会释放它。但是,当大量内存被使用(例如,大于32MB)然后被释放时,系统间IRIS会尝试在可能的情况下将释放的内存释放回操作系统。

还可以使用$ZSTORAGE设置最大内存大小。例如,以下语句将作业的最大进程专用内存设置为524288 KB

00
0 0 11
文章
Peng Qiao · 一月 5, 2021 阅读大约需 4 分钟
增强型日志监视器

各位开发者们大家好!

 

此前,我向各位介绍了一个非常好用的运行分析监控面板,它能使消息处理过程中的关键指标可视化,例如入站/出站消息的数量和平均处理时间等。  

 

现在,我想用一项许多人已熟悉的工作流程,来展示一个增强型日志监视器——将警告信息作为Production中的消息来处理。我们可以通过创建路由规则来实现对告警消息的过滤和路由,并运用预先构建的组件(例如电子邮件适配器等)来发送粒度级别的通知。  

 

如你所知,监视和管理警告信息是确保任何应用程序平稳运行的关键。对诸如HealthShare和IRIS医疗版这样支撑医疗系统运转的一级应用程序和集成引擎来说对告警信息的处理更显得尤为重要。

 

10
0 0 16
文章
姚 鑫 · 二月 4, 2021 阅读大约需 5 分钟
第二十四章 Caché 变量大全 $ZA 变量

# <center> 第二十四章 Caché 变量大全 $ZA 变量

包含当前设备上最后一次读取的状态。

# 大纲

```java
$ZA
```

# 描述

`$ZA`包含当前设备上最后一次读取的状态。

不能使用`SET`命令修改此特殊变量。尝试这样做会导致`<SYNTAX>`错误。

# 注意

## `$ZA`,带终端I / O

`$ZA`被实现为一系列位标志,每个位表示一条特定的信息。下表显示了可能的值、它们的含义,以及如何使用模(`#`)和整数除(`\`)运算符测试它们:

00
0 0 7
文章
姚 鑫 · 二月 20, 2021 阅读大约需 6 分钟
第四十二章 Caché 变量大全 $ZTIMESTAMP 变量

第四十二章 Caché 变量大全 $ZTIMESTAMP 变量

包含协调世界时间格式的当前日期和时间。

大纲

$ZTIMESTAMP
$ZTS

描述

$ZTIMESTAMP包含协调的通用时间值形式的当前日期和时间。这是世界范围内的时间和日期标准;此值很可能与当地的时间(和日期)值不同。

$ZTIMESTAMP将日期和时间表示为以下格式的字符串:

ddddd,sssss.fff

其中ddddd是一个整数,指定自1840年12月31日起的天数;sssss是一个整数,指定自当天午夜以来的秒数,fff是一个可变的数字,指定小数秒。这种格式类似于$HOROLOG,只是$HOROLOG不包含分数秒。

假设当前日期和时间(世界协调时)如下:

00
0 0 8
文章
姚 鑫 · 二月 5, 2021 阅读大约需 4 分钟
第二十五章 Caché 变量大全 $ZB 变量

第二十五章 Caché 变量大全 $ZB 变量

包含当前I / O设备的状态信息。

大纲

$ZB

描述

$ZB包含读取操作后特定于当前I / O设备的状态信息

  • 从终端,顺序文件或其他基于字符的I / O设备读取时,$ZB包含读取操作的终止字符。它可以是终止符(例如),如果读取操作不需要终止符,则可以是输入数据的最后一个字符;如果需要终止符但未收到终止符,则可以是空字符串(例如,如果读取操作超时)。
  • 从磁带等基于块的I / O设备读取数据时,$ZB包含I / O缓冲区中剩余的字节数。写入磁带时,$ZB还包含I / O缓冲区中的字节数。

不能使用SET命令修改此特殊变量。尝试这样做会导致<SYNTAX>错误。

00
0 0 7
文章
姚 鑫 · 二月 21, 2021 阅读大约需 7 分钟
第四十三章 Caché 变量大全 $ZTIMEZONE 变量

第四十三章 Caché 变量大全 $ZTIMEZONE 变量

包含格林威治子午线的时区偏移量。

大纲

$ZTIMEZONE
$ZTZ

描述

$ZTIMEZONE可以通过两种方式使用:

  • 返回计算机的本地时区偏移量。
  • 为当前进程设置本地时区偏移量。

$ZTIMEZONE包含从格林威治子午线偏移的时区(以分钟为单位)。 (格林威治子午线包括整个英国和爱尔兰。)此偏移量表示为-1440到1440范围内的有符号整数。格林威治以西的时区指定为正数;格林威治东部的时区指定为负数。 (时区必须以分钟为单位,因为并非所有时区都以小时为单位。)默认情况下,$ZTIMEZONE初始化为计算机操作系统设置的时区。

00
0 0 6
文章
姚 鑫 · 二月 6, 2021 阅读大约需 2 分钟
第二十六章 Caché 变量大全 $ZCHILD 变量

第二十六章 Caché 变量大全 $ZCHILD 变量

当前进程的包含最后一个子进程的ID。

DHC-APP>job ##class(PHA.TEST.SpecialVariables).ZB()

DHC-APP>w $zchild
16636
DHC-APP>job ##class(PHA.TEST.SpecialVariables).ZB()

DHC-APP>w $zchild
5412

image

大纲

$ZCHILD
$ZC 

描述

$ZCHILD包含当前进程使用JOB命令创建的最后一个子进程的ID。如果进程没有使用JOB创建子进程,则$ZCHILD返回0(零)。

00
0 0 7