0

错误:

下级停止了,因为它收到了来自操作系统的信号。

信号名称:SIGABRT 信号含义:中止

代码片段:

#include "postgresql.h"
#include <QtSql>
QString config_host,config_dbname,config_dbuser,config_dbpassword, config_dbport;
PostgreSQL::PostgreSQL()
{

}
void PostgreSQL::config(QString dbHost, QString dbName, QString dbUser, QString dbPassword, QString dbPort){
 config_host = dbHost;
 config_dbname = dbName;
 config_dbuser = dbUser;
 config_dbpassword = dbPassword;
 config_dbport = dbPort;
}
void PostgreSQL::connect(QSqlDatabase db){
 db.setHostName(config_host);
 db.setDatabaseName(config_dbname);
 db.setUserName(config_dbuser);
 db.setPassword(config_dbpassword);
 db.setPort(config_dbport.toInt());
}

QSqlQuery* PostgreSQL::query(QString sql, int con){
 QString connect = QString::number(con);
 QSqlDatabase db;
 if(QSqlDatabase::contains(connect)){
 db = QSqlDatabase::database(connect);
 qDebug() « db.connectionName();
 }else{
 db = QSqlDatabase::addDatabase("QPSQL", connect);
 this->connect(db);
 qDebug() « db.connectionNames();
 qDebug() « "PostgreSQL connect ?: " « (db.open() ? "YES" : "NO");
 }

 QSqlQuery *query;
 query = new QSqlQuery(db);
 query->exec(sql);
 return query;
}

38行... 查询->执行(sql);

4

0 回答 0