postresのリレーショナルテーブルからxmlとbackに階層データを変換する仕組みを作成しました。テーブルのデータをxmlに変換するのにはあまり問題はありませんでしたが、実際のxmlを複数の挿入に変換することに悩まされています。 。私は何もしない可能性はpostgresに付属のマニュアルで(任意の助けをいただければ幸いXML(子供を持つ独立したボタンの要素とグリッド)のpostgresqlで挿入を作成するためにxmlを解析する
例:。
<BTN>
806
<BTN_WINDOW />
</BTN>
<GRID>
217
<GRID_COLUMNS>
<GRDCOL visible="true" vl_order="0"
description="some description">
<vl_props>some info</vl_props>
<vl_params>some info</vl_svc_params>
226
</GRDCOL>
<GRDCOL visible="true" vl_order="1"
title="some description">
<vl_props>some info</vl_props>
<vl_params_1>some info</vl_svc_params>
218
</GRDCOL>
<GRDCOL visible="true" vl_order="2" title="some description">
<vl_props>some info</vl_props>
<vl_svc_params>some info</vl_svc_params>
219
</GRDCOL>
<GRDCOL visible="true" vl_order="3"
title="some description">
<vl_props>some info</vl_props>
<vl_params>some info</vl_svc_params>
220
</GRDCOL>
</GRID_COLUMNS>
</GRID>
を、XMLを解析した後、私はしていますID 806
INSERT INTO TABLE (ID, PARENT_ID,POSITION_IN_PARENT) VALUES (806,NULL,NULL)
とボタンの挿入文を生成それから私は、GRID及びそのCOLのインサートのシリーズを生成することになっています私はPostgresの有するインサートをXML内の各ノードをトラバースし、生成するための方法を考え出すことができない
<GRID>
217
<GRID_COLUMNS>
<GRDCOL visible="true" vl_order="0"
description="some description">
<vl_props>some info</vl_props>
<vl_params>some info</vl_svc_params>
226
</GRDCOL>
<GRDCOL visible="true" vl_order="1"
title="some description">
<vl_props>some info</vl_props>
<vl_params_1>some info</vl_svc_params>
218
</GRDCOL>
<GRDCOL visible="true" vl_order="2" title="some description">
<vl_props>some info</vl_props>
<vl_svc_params>some info</vl_svc_params>
219
</GRDCOL>
<GRDCOL visible="true" vl_order="3"
title="some description">
<vl_props>some info</vl_props>
<vl_params>some info</vl_svc_params>
220
</GRDCOL>
</GRID_COLUMNS>
</GRID>
INSERT INTO TABLE (ID, PARENT_ID,POSITION_IN_PARENT)
VALUES (217,NULL,NULL) --grid itself
INSERT INTO TABLE (ID, PARENT_ID, POSITION_IN_PARENT)
VALUES (226,217,GRID_COLUMNS)
INSERT INTO TABLE (ID, PARENT_ID, POSITION_IN_PARENT)
VALUES (218,217,GRID_COLUMNS)
INSERT INTO TABLE (ID, PARENT_ID, POSITION_IN_PARENT)
VALUES (219,217,GRID_COLUMNS)
INSERT INTO TABLE (ID, PARENT_ID, POSITION_IN_PARENT)
VALUES (220,217,GRID_COLUMNS)
umns(GRDCOL)。何か案は?
ようこそ。 [ツアー]を読んで、[質問する]を読んで、[mcve]を投稿してください。この質問は広すぎます。 – OldProgrammer
私の悪い、いくつかの編集を加えました。アドバイスありがとうございます。 –