我正在构建一个将数据写入数据库并读取它的应用程序。我需要知道做这件事的最佳方法。首先,它会减慢我的应用程序设置运行时打开和关闭数据库的功能吗?
void Inventory::insert(int item, double qnty, int loc)
{
CC_Number cn;
char result[100]; // array to hold the result.
strcpy(result,"INSERT INTO Inventory (Item_ID, Qnty , Loc_ID) Values (");
strcat(result,cn.int_to_char(1));
strcat(result,",");
strcat(result,cn.int_to_char(2));
strcat(result,",");
strcat(result,cn.int_to_char(3));
strcat(result,");");
db = new CC_Database("Inventory.sqlite");
db->query(result);
db->close();
}
或者我应该在应用程序的主窗口打开时打开数据库并在数据库被销毁时关闭数据库?
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
db = new CC_Database("Inventory.sqlite");
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
db->close();
delete ui;
}
我从第二种方法开始,但遇到了一个障碍,将主窗口类中的 db 变量导入其他类以运行查询。我对 C++ 很陌生,所以如果我犯了一个明显的错误,请善待。