Qt中数据库基本操作--QSqlQuery .
2013-06-18 11:37
513 查看
来源 /article/8199141.html
Qt中对数据库的操作主要通过QSqlQuery实现,QSqlQuery提供了执行数据库语句的方法,在Qt中利用QSqlQuery类实现了执行SQL语句。它可以返回所有的执行结果,当建立好数据库连接好后可以通过使用QSqlQuery::exec(),如同下面的语句:
QSqlQuery query;
query.exec("SELECT * FROM book");
当创建一个QSqlQuery对象后,可以被指定的QSqlDatabase对象连接来使用。
常见的数据库操作包括添加,查询,删除,和修改等。
添加:
通过QSqlQuery类对象执行相关的SQL语句对数据库进行操作。创建数据连接后对数据库进行基本操作,如添加、删除很更新等,都可以通过QSqlQuery执行相关的SQL语句实现。例如向数据库添加数据:
QSqlQuery query;
bool value;
value = query.exec("INSERT INTO book VALUES ("'+ID+"',"'+name+"',"'+type+)")';
if(value)
QMessageBox::information(this,"notice","add sucessful!");
else
QMessageBox::information(this,"notice","add failed!");
浏览:
在QSqlQuery类中当执行exec()后会把指针放在记录集中第一个记录之上,所以需要调用QSqlQuery::next()来获取第一个数据,下面通过循环体来遍历所有表中的数据。
while(query.next())
{
QString name = query.value(0).toString();
qDebug()<<name;
}
QSqlQuery::value()函数得到当前记录区域中的数据,QSqlQuery::value()默认返回的是一个QVariant类型,Qt提供了几种可远的类型支持,它们是C++的基本的类型,如:int,QString,QByteArray。对于不同类型的转换需要使用Qt提供的函数来实现,例如QVariant::toString()与QVaniant::toInt().
删除:
QSqlQuery query;
bool value;
value = query.exec(“delete from book where ID = “‘+id+”’”);
if(value)
QMessageBox::information(this,"notice","add sucessful!");
else
QMessageBox::information(this,"notice","add failed!");
修改:
QSqlQuery query;
bool value;
value = query.exec(“update book name set name=“‘+name+'"”);
if(value)
QMessageBox::information(this,"notice","add sucessful!");
else
QMessageBox::information(this,"notice","add failed!");
Qt中对数据库的操作主要通过QSqlQuery实现,QSqlQuery提供了执行数据库语句的方法,在Qt中利用QSqlQuery类实现了执行SQL语句。它可以返回所有的执行结果,当建立好数据库连接好后可以通过使用QSqlQuery::exec(),如同下面的语句:
QSqlQuery query;
query.exec("SELECT * FROM book");
当创建一个QSqlQuery对象后,可以被指定的QSqlDatabase对象连接来使用。
常见的数据库操作包括添加,查询,删除,和修改等。
添加:
通过QSqlQuery类对象执行相关的SQL语句对数据库进行操作。创建数据连接后对数据库进行基本操作,如添加、删除很更新等,都可以通过QSqlQuery执行相关的SQL语句实现。例如向数据库添加数据:
QSqlQuery query;
bool value;
value = query.exec("INSERT INTO book VALUES ("'+ID+"',"'+name+"',"'+type+)")';
if(value)
QMessageBox::information(this,"notice","add sucessful!");
else
QMessageBox::information(this,"notice","add failed!");
浏览:
在QSqlQuery类中当执行exec()后会把指针放在记录集中第一个记录之上,所以需要调用QSqlQuery::next()来获取第一个数据,下面通过循环体来遍历所有表中的数据。
while(query.next())
{
QString name = query.value(0).toString();
qDebug()<<name;
}
QSqlQuery::value()函数得到当前记录区域中的数据,QSqlQuery::value()默认返回的是一个QVariant类型,Qt提供了几种可远的类型支持,它们是C++的基本的类型,如:int,QString,QByteArray。对于不同类型的转换需要使用Qt提供的函数来实现,例如QVariant::toString()与QVaniant::toInt().
删除:
QSqlQuery query;
bool value;
value = query.exec(“delete from book where ID = “‘+id+”’”);
if(value)
QMessageBox::information(this,"notice","add sucessful!");
else
QMessageBox::information(this,"notice","add failed!");
修改:
QSqlQuery query;
bool value;
value = query.exec(“update book name set name=“‘+name+'"”);
if(value)
QMessageBox::information(this,"notice","add sucessful!");
else
QMessageBox::information(this,"notice","add failed!");
相关文章推荐
- Qt之操作数据库(SQLite) [此博文包含图片] (2013-12-09 16:58:05) 转载 ▼ 标签: qt sqlite qsqldatabase qsqlquery qsqlerro
- QT学习——QSqlQuery基本操作
- 一起看代码来玩玩QT之18 database (last QSqlQueryModel 对数据库进行操作(只查不能改)QTableModel 可改,但是QSqlQueryModel也可以添加代理等功)
- Qt中数据库基本操作--QSqlQuery
- QT 的数据库操作(QSqlDatabase、QSqlQuery)
- Qt数据库 QSqlQueryModel实例操作
- QT笔记:数据库总结(二)之SQL模型类-QSqlQueryModel模型
- 嵌入式 QT创建数据库以及数据库基本操作问题
- QT数据库QSqlQuery---Qt
- QT QSqlTabModel 学习,用于从数据库中存取修改等操作。
- QT数据库连接操作基本学习教程
- QT连接数据库的基本操作
- Qt数据库 QSqlTableModel实例操作(1)
- QT笔记:数据库总结(二)之SQL模型类-QSqlQueryModel模型
- Qt数据库 QSqlQueryModel实例操作
- Qt开发,链接了数据库后,调用QSqlQuery::setQuery执行SQL语句获取我们想要的数据
- QT连接数据库的基本操作
- Qt使用 QSqlTableModel 模型操作数据库
- Qt数据库 QSqlQueryModel实例操作 上下篇
- Qt数据库(四)利用QSqlQuery类执行SQL语句(二)