1

我写了一个程序,需要连接到数据库来插入一些数据,我的可执行文件没有连接到数据库但是当我检查代码连接建立时!我不知道是什么问题,你知道是什么问题吗?我使用 Qt 连接到数据库,我的数据库在 mySql 上,这是我的连接方式:

soccer_db = QSqlDatabase::addDatabase("QMYSQL" , "sss");
    soccer_db.setHostName(addrrFile.c_str());
    soccer_db.setDatabaseName("sss");
    soccer_db.open();
    if (!soccer_db.open()){
        emit dsignal("ssss not opened. Ckech whether server is down or change config file");
        return false;
    }
4

2 回答 2

0

因为您尝试打开数据库两次,所以您遇到了失败。第一次尝试成功,但第二次失败。open像这样删除第一个调用

soccer_db = QSqlDatabase::addDatabase("QMYSQL" , "sss");
soccer_db.setHostName(addrrFile.c_str());
soccer_db.setDatabaseName("sss");
if (!soccer_db.open()){
    emit dsignal("ssss not opened. Ckech whether server is down or change config file");
    return false;
}
于 2013-11-24T07:50:53.400 回答
0

我想回答我的问题,在 qt 中您应该完全解决您的文件而不是相对地址,如果您需要完全解决您可以通过 QtDir 提供当前目录

于 2014-03-04T08:22:52.147 回答