下面只写出关键语句。
例子程序只给出一个,select查询的,其他操作都类似。细心研究!
#include <QtSql>
#include <QtGui>
int main( int argc, char *argv[] ){
QApplication app( argc, argv );
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("Driver={Microsoft Excel Driver (*.xls)};Readonly=0;DriverId=790;Dbq=d://temp//book1.xls;DefaultDir=d://temp");
if ( db.open()){
QSqlQuery query;
query.exec("select name,age from [sheet1$]");
while (query.next()) {
QString title = query.value(0).toString();
QString author = query.value(1).toString();
QMessageBox::critical(0, title,author);
}
}
else {
QMessageBox::critical(0, QObject::tr("Database Error"),db.lastError().text());
return 0;
}
return app.exec();
}
query.exec("CREATE TABLE guestbook (visitor CHAR(8),age int,comments TEXT)"); //这个就是创建表的操作 query.exec("insert into [artlx$] values(1, 'Ane Brun',7)"); //这个就是插入的操作
注:1.假设在你的D盘temp文件夹下有个book1.xls文件
2.表的名字一定要加$和 方括号,创建表时不需要这些
例子程序只给出一个,select查询的,其他操作都类似。细心研究!
#include <QtSql>
#include <QtGui>
int main( int argc, char *argv[] ){
QApplication app( argc, argv );
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("Driver={Microsoft Excel Driver (*.xls)};Readonly=0;DriverId=790;Dbq=d://temp//book1.xls;DefaultDir=d://temp");
if ( db.open()){
QSqlQuery query;
query.exec("select name,age from [sheet1$]");
while (query.next()) {
QString title = query.value(0).toString();
QString author = query.value(1).toString();
QMessageBox::critical(0, title,author);
}
}
else {
QMessageBox::critical(0, QObject::tr("Database Error"),db.lastError().text());
return 0;
}
return app.exec();
}
query.exec("CREATE TABLE guestbook (visitor CHAR(8),age int,comments TEXT)"); //这个就是创建表的操作 query.exec("insert into [artlx$] values(1, 'Ane Brun',7)"); //这个就是插入的操作
注:1.假设在你的D盘temp文件夹下有个book1.xls文件
2.表的名字一定要加$和 方括号,创建表时不需要这些