H_olic 2017-03-12 07:33 采纳率: 0%
浏览 1533

Qt中 QSqlQuery构造函数失败

databaseOP.h :

 class databaseOP
{
public:
    databaseOP(QString hostname);//构造函数,打开指定hostname的数据库

    ~databaseOP();//析构函数,按情况释放数据库连接。

    bool ex01();//执行存储过程,在数据库里追加新记录。

    void getDB();//查询

private:
    QSqlDatabase lk;
    bool lkResult ;
    QSqlQuery query;
    }

databaseOP.cpp :

 databaseOP::databaseOP(QString hostname)
{   
    lk=QSqlDatabase::addDatabase("QMYSQL");
    lk.setUserName("root");
    lk.setPort(3306);
    lk.setHostName(hostname);
    lk.setDatabaseName("changelog");
    lkResult =lk.open();
    if(lkResult)
    {
        qDebug()<<"数据库连接成功建立";
        query=QSqlQuery::QSqlQuery(lk);//出错connot call constructor
    }
    else
    {
        qDebug()<<"数据库连接建立失败";
    }
}
databaseOP::~databaseOP()
{
    if(lkResult)
    {
        qDebug()<<"因为连接成功,因此结束时需要释放数据库连接";
        lk.close();
    }
}

bool databaseOP::ex01()
{
    query.exec("call test()");
}

void databaseOP::getDB()
{

    query.exec("select * from ttable");
    while (query.next())
    {
        qDebug()<<query.value(0).toString()<<query.value(1).toString();

    }
}

在调用QSqlQuery 类的构造函数时出错 这要怎么弄??

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-03-12 08:17
    关注

    看你的mysql的配置和你lk的设置是否一致,mysql本身是否正常运行

    评论

报告相同问题?

悬赏问题

  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥20 为什么我写出来的绘图程序是这样的,有没有lao哥改一下
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥200 关于#c++#的问题,请各位专家解答!网站的邀请码
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号