• 3228阅读
  • 1回复

下了编译过的Qt5,mysql也装好了,连接的时候出问题 [复制链接]

上一主题 下一主题
离线ywhzjjer
 
只看楼主 倒序阅读 楼主  发表于: 2013-01-24
<DIV id=read_138629 mb10?>我试了一个连接mysql的代码:
#include <QtCore/QCoreApplication>
#include <QtSql>
#include <QTextCodec>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
//QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
QSqlDatabase dbconn=QSqlDatabase::addDatabase("QMYSQL"); //添加数据驱动
dbconn.setDatabaseName("mytest.db");
dbconn.setUserName("root"); //用户名
dbconn.setPassword("123"); //密码
dbconn.setHostName("localhost"); //数据库所在主机的IP,此处数据库存在本地
//db.setDatabaseName("DinnerSystem"); //数据库名
dbconn.setPort(3306);//在工程目录新建一个mytest.db的文件
if(!dbconn.open())
{
qDebug()<<"fdsfds";
}
QSqlQuery query;//以下执行相关QSL语句
query.exec("create table student(id varchar,name varchar)"); //新建student表,id设置为主键,还有一个name项
query.exec(QObject::tr("insert into student values(1,'李刚')"));
query.exec(QObject::tr("insert into student values(2,'苹果')"));
query.exec(QObject::tr("insert into student values(3,'葡萄')"));
query.exec(QObject::tr("insert into student values(3,'李子')"));
query.exec(QObject::tr("insert into student values(4,’橘子')"));
query.exec(QObject::tr("insert into student values(5,'核桃')"));
query.exec(QObject::tr("insert into student values(6,'芒果')")); //
query.exec(QObject::tr("select id,name from student where id>=1"));
query.exec("select id,name from student where id>=1");
while(query.next())//query.next()指向查找到的第一条记录,然后每次后移一条记录
{
int ele0=query.value(0).toInt();//query.value(0)是id的值,将其转换为int型
QString ele1=query.value(1).toString();
qDebug()<<ele0<<ele1;//输出两个值
}
query.exec(QObject::tr("drop student"));
return a.exec();
}
结果还是连接不上
E:\Qt_work\e1-build-Desktop_Qt_5_0_0_MSVC2010_32bit_SDK-Debug\debug\e1.exe 启动中...
fdsfds
QSqlQuery::exec: database not open
QSqlQuery::exec: database not open
QSqlQuery::exec: database not open
QSqlQuery::exec: database not open
QSqlQuery::exec: database not open
QSqlQuery::exec: database not open
QSqlQuery::exec: database not open
QSqlQuery::exec: database not open
QSqlQuery::exec: database not open
QSqlQuery::exec: database not open
QSqlQuery::exec: database not open
这是什么原因
离线ywhzjjer
只看该作者 1楼 发表于: 2013-01-24
已经解决了
快速回复
限100 字节
 
上一个 下一个