【发布时间】:2010-09-19 02:14:04
【问题描述】:
我有一些 EDI 消息(X12、HL7 等...)存储在 Oracle 数据库中。我有时想提取单个字段(例如 ISA-03)。目前,我有一些非常丑陋的 sql。我想创建一个 PL/SQL 包以使其更容易,并且想知道是否有人已经这样做了。
我想像这样:
选择 edi.x12.extract_field(clob_column, 'ISA', 4) 从 编辑表
【问题讨论】:
我有一些 EDI 消息(X12、HL7 等...)存储在 Oracle 数据库中。我有时想提取单个字段(例如 ISA-03)。目前,我有一些非常丑陋的 sql。我想创建一个 PL/SQL 包以使其更容易,并且想知道是否有人已经这样做了。
我想像这样:
选择 edi.x12.extract_field(clob_column, 'ISA', 4) 从 编辑表
【问题讨论】:
虽然我从未将 HL7 消息按原样存储在数据库中,但它应该是可能的。
HL7(和 XML)的理念是,它是系统用来传输信息的一种通用格式。它从未被设计为“可储存”的物品。通常,我会将数据从仓库格式中提取到特定的 HL7 消息中,然后发送到 MQHub/eGate 进行传输。在返回时,相反地提取我正在仓储的字段并保存它们。 IE。 HL7 不应该被存储,所以我没有。
讲完了。 :)
我建议每个段使用一个函数/过程,并将消息拆分到一个临时表中。
【讨论】: