|
本帖最后由 Q小麦 于 2015-6-14 11:47 编辑
我的头文件是这样的- #ifndef GGG_H
- #define GGG_H
- #include <QtSql>
- #include <QMessageBox>
- #include <QString>
- #include <QDebug>
- #include <QtSql/QSqlQuery>
- static bool connect ()
- {
- //连接数据库,如果不存在则新建一个
- bool ok=QFile::exists("library.db");
- QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
- db.setDatabaseName("library.db");
- if(!db.open())
- {
- QMessageBox::warning(0,"title","打开数据库失败");
- return false;
- }
-
- QSqlQuery query;
- query.exec("create table student(id varchar PRIMARY KEY,password varchar);");
- query.exec("create table stuBorrow(id varchar,bookcode1 varchar,bTime1 smalldatetime,rTime1 smalldatetime, bookcode2 varchar,bTime2 smalldatetime,rTime2 smalldatetime,");
- query.exec("create table manager(id varchar PRIMARY KEY,password varchar);");
-
- query.exec("select * from student ");
- while(query.next())
- {
- QString a=query.value(1).toString();
- qDebug()<<a;
- }
- QSqlQuery query2;
- query2.exec("create table book(bookCode varchar PRIMARY KEY,bookName varchar,author varchar,num int);");
- query2.exec("select * from book ");
- while(query2.next())
- {
- QString a=query2.value(1).toString();
- qDebug()<<a;
- }
-
- return true;
- }
- #endif // GGG_H
复制代码 在另外的cpp文件中对book表插入数据- void MainWindow::on_addSureButton_clicked()
- {
- int n=ui->amountEdit->text().toInt();
- QSqlQuery query;
- query.prepare("INSERT INTO book(bookCode,bookName,author,num) "
- "VALUES (:bookCode, :bookName, :author, :num)");
- query.bindValue(":bookCode", ui->bookCodeEdit->text());
- query.bindValue(":bookName", ui->bookNameEdit->text());
- query.bindValue(":author", ui->authorEdit->text());
- query.bindValue(":num", n);
- query.exec();
- ui->bookCodeEdit->clear();
- ui->bookNameEdit->clear();
- ui->authorEdit->clear();
- ui->amountEdit->clear();
- ui->bookCodeEdit->setFocus();
- }
复制代码 但是数据没有插入到表中,
我还创建了一个student的表,但是那个可以插入数据,请问是为什么
|
|