0

我想在 CPLEX OPL 模型中使用来自外部 MySQL 数据库的数据。

据我了解,这应该可以通过 OPL 的DBConnection和 ODBC 实现。对于连接字符串的构造,我找到了这个信息

现在我开始了一个测试项目'test.mod':

{string} names = ...;

execute DISPLAY {
    writeln("names: ");
        for (var n in names)
            writeln(n);
}

和'test.dat':

DBConnection db("odbc", "DRIVER={MySQL ODBC 8.0 Driver};SERVER=*ip*:*port*;DATABASE=*dbname*;USER=*user*;PASSWORD=*pw*;OPTION=3;");

names from DBRead(db, "SELECT name FROM customer");

目前,我收到 DBConnection 行的此错误:“数据解析错误:语法错误,意外(标识符),期待来自或到。”

现在我想知道是否有可能连接 CPLEX/OPL 和 MySQL?或者,如果我可能缺少启用 ODBC 的内容,或者我的连接字符串语法不正确。

4

1 回答 1

0

您可以在https://www.ibm.com/support/knowledgecenter/tr/SSSA5P_12.6.2/ilog.odms.ide.help/OPL_Studio/working_environment/topics/opl_working_env_db找到 OPL 曾经支持的数据库列表.html

但是从 12.7 版本开始,您需要找到另一种方法。

一种解决方法是使用 IloOplExec,如https://www.ibm.com/developerworks/community/forums/html/topic?id=d7c20a69-8b24-49d6-b439-a9b381539637&ps=25中所述

于 2018-07-18T18:50:46.143 回答