【问题标题】:Anylogic: UPDATE table and get value of parameterAnylogic:更新表并获取参数值
【发布时间】:2021-05-11 11:27:20
【问题描述】:

我尝试通过不同的参数名称使用 for 循环运行,并尝试将它们的值存储在带有 UPDATE 的表中。 UPDATE 语句中的“+AktuellerParameterWert+”语句只显示参数的名称,而不是预期的参数值。参数在 Anylogic 的图形界面上声明,名称类似于“Parameter12”并包含 int 值。我猜 UPDATE 语句无法连接到图形界面上的参数。对于这两个问题的任何帮助将不胜感激:)

错误:根: 在 modify() 方法中执行 SQL 查询时发生错误 原因:用户缺少权限或找不到对象:语句中的 PARAMETER11 [UPDATE konfigurations_matrix SET station1=Parameter11 WHERE produktionsschritte = 'A']

int AnzahlAvgs=4;       
int AnzahlStationen=2;  

int AvgCount;       
int StationenCount; 

String ParameterName = "Parameter";
String AktuellerParameterWert;
String Station = "station";
String AktuelleStation;
String Produktionsschritt;


for (StationenCount=1; StationenCount<=AnzahlStationen; StationenCount++) {

for (AvgCount=1; AvgCount<=AnzahlAvgs; AvgCount++) {


AktuellerParameterWert = ParameterName + StationenCount + AvgCount;


System.out.println(AktuellerParameterWert);     
        
AktuelleStation = Station + StationenCount;

Produktionsschritt = String.valueOf((char)(StationenCount + 64));

executeStatement("UPDATE konfigurations_matrix SET '"+AktuelleStation+"'="+AktuellerParameterWert+" WHERE produktionsschritte = '"+Produktionsschritt+"'"); 


   }
}

【问题讨论】:

    标签: anylogic


    【解决方案1】:

    您没有从调用 SQL 代码的位置正确引用参数。

    您需要在正确的位置引用参数,相对于您调用 SQL 语句的位置。这是基本的 OOP,理解起来非常重要。在 AnyLogic 帮助中搜索“我在哪里以及如何到达”以了解更多信息。

    【讨论】:

    • 感谢本杰明的评论!我的参数和函数都在我的主目录中。我尝试了几种组合来自 Anylogic 帮助的信息,但没有奏效。如果我只是将特定参数名称放入我的 UPDATE 语句中,如“+Parameter11+”,那么正确的值将存储在我的表中。但是,如果我使用“+AktuellerParameterWert+”并尝试使用 for 循环遍历不同的参数名称,它就不起作用。我试着把主要的。在参数名称前面,但不是运气。是否可以遍历参数名并访问它们的值?
    • 你只能迭代可迭代的东西。您可以将参数放入一个集合中(如果它们具有相同的类型)并在它们之间循环。但是你的 SQL 语句必须在那个循环中。选择几个参数并右键单击:有一个添加到集合的选项
    • 非常感谢您的帮助!!我把它和这个系列一起工作了:) 很高兴有机会向你和社区提问,让学习和编码变得更加有趣!!祝你有个愉快的夜晚:)
    • @Pumluk 如果答案有帮助,请点赞。帮助其他人在将来遇到类似问题时更快地找到它:)
    猜你喜欢
    • 2018-03-14
    • 2021-09-13
    • 2021-05-10
    • 1970-01-01
    • 2020-04-13
    • 2021-01-16
    • 1970-01-01
    • 2013-09-14
    • 2019-09-26
    相关资源
    最近更新 更多