首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++中MySQL列的字节长度

问C++中MySQL列的字节长度
EN

Stack Overflow用户
提问于 2014-05-12 12:10:18
回答 2查看 497关注 0票数 1

我正在使用C++为MySQL数据库编写一个程序。我试图通过比较列的长度(以字节为单位)与通过/失败来检查条件。代码如下:

代码语言:javascript
复制
while (row = mysql_fetch_row(result))
{
    lengths = mysql_fetch_lengths(result);
    num_rows = mysql_num_rows(result);

    for (i = 0; i < num_fields; i++)
    {
        if (strstr(fields[i].name, "RSSI") != NULL)
        {
            if (lengths[*row[i]] == ??)
                printf("current value is %s \t", row[i]);
        }
    }
}

因此,基本上我要做的是在列中查找字符串"RSSI“,如果该字符串存在,我希望打印该值。每列中的值的长度为3个字节。那么如何检查length [*rowsi]的长度是否为3个字节呢?谢谢

EN

回答 2

Stack Overflow用户

发布于 2014-05-12 16:29:11

根据official MySQL documentation,mysql_fetch_lengths返回一个unsigned long数组,其中包含当前行的列的长度。虽然描述并不清楚它是以字节还是其他形式出现的,但下面的示例说明了这一点。

因此,您应该直接检查3。

此外,您的代码中还存在一些语法和语义错误,以及可能的重构,其中包括:

  • 如果lengths变量是具有当前行长度的数组,则表达式lengths[*row[i]]应仅为lengths[i],因为i是当前列的索引。
  • 为了更好地定义或使用readability.
  • Some变量,可以将<if>D13内的两个i合并到&&运算符。

代码将如下所示:

代码语言:javascript
复制
// Properly assign a value to fields variable.
fields = mysq_fetch_fields(result);

// Getting the number of fields outside the loop is better.
num_fields = mysql_num_fields(result);

while (row = mysql_fetch_row(result))
{
    lengths = mysql_fetch_lengths(row);

    for (i = 0; i < num_fields; i++)
        if (strstr(fields[i].name, "RSSI") != NULL && lengths[i] == 3)
            printf("current value is %s \t", row[i]);

    printf("\n"); // For better output print each row in a new line.
}

你真的应该仔细阅读文档,以避免由于使用错误的函数而导致的编译或逻辑错误。

票数 4
EN

Stack Overflow用户

发布于 2015-01-30 23:40:14

我认为有一个打字错误:

开发人员文档状态:

(http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-lengths.html) ...

代码语言:javascript
复制
   num_fields = mysql_num_fields(result);
    lengths = mysql_fetch_lengths(result);
    for(i = 0; i < num_fields; i++)

不

代码语言:javascript
复制
lengths = mysql_fetch_lengths(row);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23603876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档