欢迎访问 外汇EA下载与MT4/MT5自动交易资源 - 聚合外汇EA、黄金EA、量化交易工具与自动化交易实战内容。
登录 注册

MySQL for new MQL4(在版本 600 中测试) - MetaTrader 4 库

author emer | 544 人阅读 | 0 人评论 |

最初创建者为拉塞尔,然后修改为韦德罗伊德现在分叉了卢金斯

自从 MT4 版本 600 发布以来,与使用 ANSI 字符串格式的 DLL 进行通信不再容易,因为 MQL4 中的字符串现在采用 UNICODE 格式(了解更多这里)。

该库基于vedroid的修改Russel 的 MySQL 包装器并使用来自的技术EAX_Mysql图书馆和来自片段 发布经过gchrmt4

任何贡献表示赞赏。

#包括细绳  主持人     =“本地主机”;细绳  用户     =“根”;细绳  通过     =“123456”;细绳  数据库名称 =“信息架构”;整数     端口     =3306;整数     套接字 =0;整数     客户 =0;整数     数据库连接 ID =0;布尔值    良好连接=错误的;整数开始(){
    goodConnect = init_MySQL(dbConnectId, 主机, 用户, 通行证, dbName, 端口, 套接字, 客户端);
    
    如果( !goodConnect ) {
        返回1);// 连接不良    }

    //+--------------------------------------------------------------------------------    //|获取多行中的多列    //+--------------------------------------------------------------------------------        细绳查询=字符串连接(
        “选择`TABLE_NAME`,`TABLE_ROWS`,`CREATE_TIME`,`CHECK_TIME`”,
            “来自‘表格’”,
            “WHERE `TABLE_SCHEMA` = \'mysql\'”);
    细绳数据[][4];  // 重要:第二维大小必须等于列数    整数结果 = MySQL_FetchArray(dbConnectId, 查询, 数据);
    
    如果(结果==0){
        // Print("选择了 0 行");    }别的 如果(结果==-1){
        // Print("发生一些错误");    }别的{
        // Print("查询成功。打印行...");        整数num_rows = ArrayRange(数据,0);
        整数num_fields = ArrayRange(数据,1);
        
        为了整数我=0;我 < 行数;我++){
            细绳线=””;
            
            为了整数j =0; j < num_fields; j++ ) {
              细绳值=数据[i][j];
                线=字符串连接(线、值、“;”);
            }
            打印(线);
        }
    }
    
    //+--------------------------------------------------------------------------------    //|单行读取    //|类似于数组获取    //+--------------------------------------------------------------------------------    细绳排[][4];  // 重要:第二维大小必须等于列数    细绳行查询 =字符串连接“选择`TABLE_NAME`,`TABLE_ROWS`,`CREATE_TIME`,`CHECK_TIME`”,
            “来自‘表格’”,
            “WHERE `TABLE_SCHEMA` = \'mysql\' ”,
            “限制 0,1”);
    整数row_result = MySQL_FetchArray(dbConnectId, rowQuery, row);
    线=“单行查询:”;
    为了整数r=0; r < ArrayRange(行,1); r++) {
      线=字符串连接(行,行[0][r],“;”);
    }
    打印(线);
    
    //+--------------------------------------------------------------------------------    //|示例插入    //|这只是一个例子,没有人可以插入到 information_schema 中。    //+--------------------------------------------------------------------------------    /*字符串插入查询 = StringConcatenate(
        “插入`CHARACTER_SETS`值(”,“sometext”
                                        , "," , "oneMoreText"
                                        、“、”、“和变量”
                                        , "," , "nextWillBeNumber"
                                        , "," , 2
                                        ,“)”
        );
    if ( MySQL_Query(dbConnectId, insertQuery) ) {
        print("插入好");
    }*/    
    
    //+--------------------------------------------------------------------------------    deinit_MySQL(dbConnectId);
    返回0);
}//+------------------------------------------------------------------+

源码发布于Github 存储库。任何贡献都将受到高度赞赏。


附件下载

📎 mql4-mysql.mqh (8.29 KB)

Source: MQL5 #11114

🔐
请登录后参与评论
注册满12小时后评论,即可解锁附件下载
立即登录