#include<QObject>
#include<iostream>
#include<QString>
#include<QSqlQueryModel>
#include<QTableView>
#include<QSqlQuery>
#include<QSqlDatabase>
#include<QInputDialog>
#include<QApplication>
#include<QTextCodec>
void creatDb();
void creatAll();
void insertAll();
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
// QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8"));
creatDb(); //创建数据库
creatAll();
insertAll();
QString str = QString ("select * from AllFood");
QSqlQueryModel *model = new QSqlQueryModel;
model ->setQuery(str);
QTableView *view = new QTableView;
view -> setModel(model);
view ->show();
return app.exec();
}
void creatDb()//创建数据库menu.db文件
{
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("menu.db");
if(!db.open())
{
printf("sqlite is not open!\n");
return;
}
}
void creatAll()
{
//如果已经存在了那么不会执性创建表,相当于不执行本条语句,不用去判断是否存在
QString name = "AllFood";
QSqlQuery query;
QString str = QString("create table %1 (num,name,price)").arg(name);
if( query.exec(str) )//如果存在了返回bool false;成功了返回bool ok;
{
std::cout<<"Success!";
fflush(stdout);
}
else
{
std::cout<<"Failure!";
fflush(stdout);
}
}
void insertAll()
{
QSqlQuery query;
query.exec(QObject::tr("insert into AllFood values(1,'凉拌山药',15)"));
query.exec(QObject::tr("insert into AllFood values(2,'刀拍黄瓜',10)"));
query.exec(QObject::tr("insert into AllFood values(3,'酱羊肉',20)"));
query.exec(QObject::tr("insert into AllFood values(4,'靠大虾',30)"));
query.exec(QObject::tr("insert into AllFood values(5,'凉拌千张',20)"));
query.exec(QObject::tr("insert into AllFood values(6,'酸辣泡菜',10)"));
query.exec(QObject::tr("insert into AllFood values(7,'韭菜皮蛋松',8)"));
query.exec(QObject::tr("insert into AllFood values(8,'芝麻菠菜',10)"));
query.exec(QObject::tr("insert into AllFood values(9,'司马怀府鸡',35)"));
query.exec(QObject::tr("insert into AllFood values(10,'如意炒三丝',15)"));
query.exec(QObject::tr("insert into AllFood values(11,'滋补人参鸡汤',50)"));
query.exec(QObject::tr("insert into AllFood values(12,'玉米虾仁',25)"));
query.exec(QObject::tr("insert into AllFood values(13,'什锦肉丁',30)"));
query.exec(QObject::tr("insert into AllFood values(14,'东坡肉',33)"));
query.exec(QObject::tr("insert into AllFood values(15,'紫苏茄子',20)"));
query.exec(QObject::tr("insert into AllFood values(16,'软熘虾丁',35)"));
query.exec(QObject::tr("insert into AllFood values(17,'饺子',20)"));
query.exec(QObject::tr("insert into AllFood values(18,'香炸饭团',10)"));
query.exec(QObject::tr("insert into AllFood values(19,'米饭',4)"));
query.exec(QObject::tr("insert into AllFood values(20,'锅贴',14)"));
query.exec(QObject::tr("insert into AllFood values(21,'比萨',25)"));
query.exec(QObject::tr("insert into AllFood values(22,'汉堡包',7)"));
query.exec(QObject::tr("insert into AllFood values(23,'豆沙锅饼',9)"));
query.exec(QObject::tr("insert into AllFood values(24,'鲜肉小包',10)"));
query.exec(QObject::tr("insert into AllFood values(25,'大麦茶',100)"));
query.exec(QObject::tr("insert into AllFood values(26,'樱桃酒',101)"));
query.exec(QObject::tr("insert into AllFood values(27,'黑花生酱',102)"));
query.exec(QObject::tr("insert into AllFood values(28,'冰镇果子露',50)"));
query.exec(QObject::tr("insert into AllFood values(29,'梅子酒',150)"));
query.exec(QObject::tr("insert into AllFood values(30,'罗汉山楂茶',120)"));
query.exec(QObject::tr("insert into AllFood values(31,'纯天然苹果醋',130)"));
query.exec(QObject::tr("insert into AllFood values(32,'石榴汁',98)"));
}