|
|
|
@ -0,0 +1,207 @@
|
|
|
|
|
#include <QSqlDatabase>
|
|
|
|
|
#include <QSqlError>
|
|
|
|
|
#include <QSqlQuery>
|
|
|
|
|
#include <stdio.h>
|
|
|
|
|
#include "dirent.h"
|
|
|
|
|
#define FilePath1 "./<EFBFBD><EFBFBD><EFBFBD><EFBFBD>/"
|
|
|
|
|
#define FilePath2 "./èè/"
|
|
|
|
|
#define FilePath3 "./<EFBFBD><EFBFBD><EFBFBD><EFBFBD>/"
|
|
|
|
|
#define FilePath4 "./<EFBFBD>ʴ<EFBFBD>/"
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD>
|
|
|
|
|
QSqlDatabase database;
|
|
|
|
|
if (QSqlDatabase::contains("qt_sql_default_connection"))
|
|
|
|
|
{
|
|
|
|
|
database = QSqlDatabase::database("qt_sql_default_connection");
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
database = QSqlDatabase::addDatabase("QSQLITE");
|
|
|
|
|
database.setDatabaseName("MyDataBase.db");
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD>
|
|
|
|
|
if (!database.open())
|
|
|
|
|
{
|
|
|
|
|
qDebug() << "Error: Failed to connect database." << database.lastError();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
// do something
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
QSqlQuery sql_query;
|
|
|
|
|
//pets<74><73>
|
|
|
|
|
QString create_sql = "create table Pets (id int primary key, type varchar(10), name varchar(30),knowledge varchar(1000000), link varchar(50))";
|
|
|
|
|
sql_query.prepare(create_sql);
|
|
|
|
|
if(!sql_query.exec())
|
|
|
|
|
{
|
|
|
|
|
qDebug() << "Error: Fail to create table." << sql_query.lastError();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
qDebug() << "Table created!";
|
|
|
|
|
}
|
|
|
|
|
//feedingKnowledge<67><65>
|
|
|
|
|
QString create_sql = "create table Feedingnowledge (id int primary key, type varchar(10), knowledge varchar(200), link varchar(50))";
|
|
|
|
|
sql_query.prepare(create_sql);
|
|
|
|
|
if(!sql_query.exec())
|
|
|
|
|
{
|
|
|
|
|
qDebug() << "Error: Fail to create table." << sql_query.lastError();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
qDebug() << "Table created!";
|
|
|
|
|
}
|
|
|
|
|
//PetRecord<72><64>
|
|
|
|
|
QString create_sql = "create table PetRecord (id int primary key, date varchar(20), time varchar(20), type varchar(20), details varchar(100))";
|
|
|
|
|
sql_query.prepare(create_sql);
|
|
|
|
|
if(!sql_query.exec())
|
|
|
|
|
{
|
|
|
|
|
qDebug() << "Error: Fail to create table." << sql_query.lastError();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
qDebug() << "Table created!";
|
|
|
|
|
}
|
|
|
|
|
//Favorites
|
|
|
|
|
QString create_sql = "create table Favorites (id int primary key, for_id int, link varchar(50))";
|
|
|
|
|
sql_query.prepare(create_sql);
|
|
|
|
|
if(!sql_query.exec())
|
|
|
|
|
{
|
|
|
|
|
qDebug() << "Error: Fail to create table." << sql_query.lastError();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
qDebug() << "Table created!";
|
|
|
|
|
}
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
int i = 0;
|
|
|
|
|
int filesize = 0;
|
|
|
|
|
DIR *dir = NULL;
|
|
|
|
|
FILE *fin;
|
|
|
|
|
char a[1000000];
|
|
|
|
|
struct dirent *entry;
|
|
|
|
|
|
|
|
|
|
QString insert_sql = "insert into Pets values (?, ?, ?, ?, ?)";
|
|
|
|
|
int id = 1;
|
|
|
|
|
if((dir = opendir(FilePath1))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("opendir failed!");
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
while(entry=readdir(dir))
|
|
|
|
|
{
|
|
|
|
|
i++;
|
|
|
|
|
if(i!=1&&1!=2){
|
|
|
|
|
fin = fopen(entry->d_name,"r");
|
|
|
|
|
if(fscanf(fin,"%s",a)!=EOF){
|
|
|
|
|
sql_query.prepare(insert_sql);
|
|
|
|
|
sql_query.addBindValue(id);
|
|
|
|
|
sql_query.addBindValue("dog");
|
|
|
|
|
sql_query.addBindValue(entry->d_name);
|
|
|
|
|
sql_query.addBindValue(a);
|
|
|
|
|
id++;
|
|
|
|
|
if(!sql_query.exec())
|
|
|
|
|
{
|
|
|
|
|
qDebug() << sql_query.lastError();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
closedir(dir);
|
|
|
|
|
}
|
|
|
|
|
if((dir = opendir(FilePath2))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("opendir failed!");
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
while(entry=readdir(dir))
|
|
|
|
|
{
|
|
|
|
|
i++;
|
|
|
|
|
if(i!=1&&1!=2){
|
|
|
|
|
fin = fopen(entry->d_name,"r");
|
|
|
|
|
if(fscanf(fin,"%s",a)!=EOF){
|
|
|
|
|
sql_query.prepare(insert_sql);
|
|
|
|
|
sql_query.addBindValue(id);
|
|
|
|
|
sql_query.addBindValue("cat");
|
|
|
|
|
sql_query.addBindValue(entry->d_name);
|
|
|
|
|
sql_query.addBindValue(a);
|
|
|
|
|
id++;
|
|
|
|
|
if(!sql_query.exec())
|
|
|
|
|
{
|
|
|
|
|
qDebug() << sql_query.lastError();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
closedir(dir);
|
|
|
|
|
}
|
|
|
|
|
if((dir = opendir(FilePath3))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("opendir failed!");
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
while(entry=readdir(dir))
|
|
|
|
|
{
|
|
|
|
|
i++;
|
|
|
|
|
if(i!=1&&1!=2){
|
|
|
|
|
fin = fopen(entry->d_name,"r");
|
|
|
|
|
if(fscanf(fin,"%s",a)!=EOF){
|
|
|
|
|
sql_query.prepare(insert_sql);
|
|
|
|
|
sql_query.addBindValue(id);
|
|
|
|
|
sql_query.addBindValue("else");
|
|
|
|
|
sql_query.addBindValue(entry->d_name);
|
|
|
|
|
sql_query.addBindValue(a);
|
|
|
|
|
id++;
|
|
|
|
|
if(!sql_query.exec())
|
|
|
|
|
{
|
|
|
|
|
qDebug() << sql_query.lastError();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
closedir(dir);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
QString insert_sql = "insert into Feedingnowledge values (?, ?, ?, ?)";
|
|
|
|
|
id = 1;
|
|
|
|
|
if((dir = opendir(FilePath4))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("opendir failed!");
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
while(entry=readdir(dir))
|
|
|
|
|
{
|
|
|
|
|
i++;
|
|
|
|
|
if(i!=1&&1!=2){
|
|
|
|
|
fin = fopen(entry->d_name,"r");
|
|
|
|
|
if(fscanf(fin,"%s",a)!=EOF){
|
|
|
|
|
sql_query.prepare(insert_sql);
|
|
|
|
|
sql_query.addBindValue(id);
|
|
|
|
|
sql_query.addBindValue(entry->d_name);
|
|
|
|
|
sql_query.addBindValue(a);
|
|
|
|
|
id++;
|
|
|
|
|
if(!sql_query.exec())
|
|
|
|
|
{
|
|
|
|
|
qDebug() << sql_query.lastError();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
closedir(dir);
|
|
|
|
|
}
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
//<2F>ر<EFBFBD><D8B1><EFBFBD><EFBFBD>ݿ<EFBFBD>
|
|
|
|
|
database.close();
|