gpt4 book ai didi

progress-4gl - 从临时表创建数据库表(通过代码)

转载 作者:行者123 更新时间:2023-12-01 22:35:36 25 4
gpt4 key购买 nike

我有一个名为 tt 的临时表。我想使用我的临时表创建一个具有相同字段名称和类型的数据库表。

我不知道在 Progress-4gl 中该怎么做。这可能吗 ?

谢谢。

最佳答案

简短回答:是

通过代码执行此操作的最安全方法是创建一个增量 df,然后加载它。这是一个非常局部的开始,应该让你继续:

DEFINE TEMP-TABLE tt NO-UNDO
FIELD ii AS INT
FIELD cc AS CHAR
INDEX ttix IS UNIQUE PRIMARY ii.

DEF VAR hb AS HANDLE NO-UNDO.
DEF VAR hf AS HANDLE NO-UNDO.
DEF VAR ifield AS INT NO-UNDO.

hb = TEMP-TABLE tt:DEFAULT-BUFFER-HANDLE.

OUTPUT TO "tt.df".

PUT UNFORMATTED SUBSTITUTE( "ADD TABLE &1", QUOTER( hb:NAME ) ) SKIP.

DO ifield = 1 TO hb:NUM-FIELDS:

hf = hb:BUFFER-FIELD( ifield ).

PUT UNFORMATTED
SUBSTITUTE(
"ADD FIELD &1 OF &2 AS &3",
QUOTER( hf:NAME ),
QUOTER( hb:NAME ),
hf:DATA-TYPE
) SKIP.

/* to do: add other field attributes like label, initial value, decimals, format */

END.

/* to do: add indices */

OUTPUT CLOSE.

生成的 df 可以加载:

RUN prodict/load_df.p ( "tt.df" ).

关于progress-4gl - 从临时表创建数据库表(通过代码),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24014933/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com