我只是想知道是否有办法使用ABL代码创建和删除表(不是临时表)。我知道通过数据字典工具创建/删除表。此外,我发现有一种方法可以使用prodict / load_df.p创建一个表(通过加载.df文件)。但我正在寻找像#34; CREATE TABLE"和" DROP TABLE"在ABL。
答案 0 :(得分:1)
没有这样的陈述。
从理论上讲,你可以简单地使用CREATE _FILE等等,但细节没有记载,如果搞砸了你就会陷入伤害的世界。
支持的方法是调用数据字典API(加载.df文件,因为您已经找到)。
答案 1 :(得分:1)
如果您在一个会话中创建和删除表,那么,您可能应该使用临时表。
答案 2 :(得分:0)
就像汤姆说的那样,没有办法从ABL / 4GL中做到这一点。您始终可以使用代码为添加/删除生成DF文件。
请记住,您无法与连接到数据库的用户进行大多数架构更改。 Progress不会像Oracle,DB2等那样处理模式更改。
ABL / 4GL创建表和SQL创建表有不同的存储池和规则。
答案 3 :(得分:0)
我会创建一个df文件,然后使用
加载它RUN prodict/load_df.p(INPUT DfFile).
因此,您可以更改架构。然而,我没有测试它,也不知道这是否适用于服务数据库(与单用户连接相比)。