在anylogic代码部分中,我正在添加此代码以检查外部数据库(Microsoft SQL Server)中是否存在值,但是却收到找不到vanet.vehicle的错误。

selectFrom(vanet).
      where(vanet.vehicle.eq(vehicle.getIndex())).
      firstResult( vanet.surrounded );

if (vanet.surrounded==null)
  {
        System.out.println("surr :" + vanet.surrounded);

        insertInto(vanet)
    .columns(vanet.vehicle, vanet.surrounded)
    .values(vehicle.getIndex(), v.getIndex())
    .execute();
     k =1;
        }
else {
 k=0;
}

最佳答案

您的代码不是访问SQL数据库,而是访问AnyLogic内置数据库。如果它说找不到vanet.vehicle,则表示内置dbase中没有名为vanet的表,或者没有名为vehicle的列。

确保您知道使用内置数据库(我的建议)或正确连接到外部SQL数据库(但随后您无法使用上面的代码,因为它访问AL数据库)

09-25 22:31