QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 668|回复: 2

有用C写过MySQL程序的高手请进

[复制链接]
发表于 2003-9-25 22:04:51 | 显示全部楼层 |阅读模式
我自己写的一个查询函数(就是简单地包装了一下):
MYSQL_RES *my_query(MYSQL *conn, char *query_string, my_bool use_real)
{
    int result;

    if(use_real)
        result = mysql_real_query(conn,
                           query_string,
                            strlen(query_string));
    else
        result = mysql_query(conn, query_string);

    if(result != 0)
    {
        printf("Query failed: \"%s\"", query_string);
        return NULL;
    }
    else
        return mysql_store_result(conn);
}

在另一个函数中这样调用:

MYSQL_RES *res_set;

res_set = my_query(conn, query_string, FALSE);

运行时发生segment错误,请高手帮忙看看错在何处。数据库的连接与查询语句都不存在问题。
多谢!
发表于 2003-9-27 10:38:32 | 显示全部楼层
这个应该和mysql的内容没什么关系吧 如果确认问题出在这里 多半是querystring的空间大小问题了
回复

使用道具 举报

 楼主| 发表于 2003-9-27 17:55:43 | 显示全部楼层
谢谢。
query_string的声明是char *query_string[128]; 对我用的查询语句来讲长度是足够的,我又看了一下,可以确定问题出在查询函数的调用一句上,我在原程序中去掉了自己的函数,直接使用了mysql_query(),结果是一样的,换成mysql_real_query()同样如此,gdb输出的信息在于libmysqlclient.so。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-14 11:37 , Processed in 0.037185 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表