我是在官网下的最新版本的qt-sdk-win-opensource-2009.05.exe.
环境: win7+QT4.6+MYSQL5+qtcreater 1.3.0
目前出现的问题有:
用qtcreater编译工程(一个online judge系统的后台部分)时出现:
mingw32-make[1]: Leaving directory `D:/www/soj/src'
mingw32-make: Leaving directory `D:/www/soj/src' //这里已经编译没得问题了,可是提示塞班的错误.晕死.
To use Symbian OS tools without specifying a device name, a default
device must be set using the devices -setdefault command.
mingw32-make[1]: *** [debug/daemon.o] Error 255
mingw32-make: *** [debug] Error 2
Exited with code 2.
Error while building project src
When executing build step 'Make'
用qt command prompt进入命令行编译就ok.郁闷了.
第二个问题是连接mysql时候的问题.
代码:
QSqlQuery query;
QString tempString;
// 获取使用的编程语言。
query.prepare("SELECT `compiler` FROM status WHERE runID = :id");
query.bindValue(" :id", id);
if(query.exec()){
qDebug()<<"exec ok";
}
query.first();
if(query.isValid())
qDebug()<<"query is ok";
QString languageName = query.value(0).toString();
运行的时候 languageName 没有值,query.isValid()为假.但是id是有值的.且mysql里面数据也有.
但是通过一下代码:
QString qsql("SELECT `compiler` FROM status WHERE runID = ");
qsql.append(QString::number(id));
QSqlQuery query(qsql);//()
QString tempString;
// 获取使用的编程语言。
if(query.exec()){
qDebug()<<"exec ok";
}
query.first();
if(query.isValid())
qDebug()<<"query is ok";
QString languageName = query.value(0).toString();
运行的时候 languageName能获取的到值,很是不解.
希望大家帮忙解决一下,谢谢!