mysql - 将 CPLEX OPL 模型与 MySQL DB 连接
问题描述
我想在 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 的内容,或者我的连接字符串语法不正确。
解决方案
您可以在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中所述
推荐阅读
- reactjs - 如何在移动菜单中使用 redux 切换嵌套链接组件
- python - Code works with Jupyter(Anaconda) but not with normal Python - WHY
- c# - 使用 UserOption 枚举创建双精度值
- function - VB6 - 如何使表单排在第二位?
- r - 在 Markdown 文档中创建响应式 Shiny 应用程序
- php - 在 PHP 和 MySQL 中上传个人资料图片:我做错了什么?
- c# - 将简单对象转换为简单通用接口
- python - 网页抓取 Python Shell 没有响应
- c++ - 标记和语法
- javascript - 如何在 Fabric 中为线条绘制设置动画