我有以下想法:用户可以编辑数据库,当他按退出数据库时,系统将询问他是否要保存编辑过的数据库,或者如果他编辑了某个内容,然后将其返回,则不会询问他。
我想我应该比较创建的数据库和编辑后的数据库时,用户按退出,但不知道如何。
这是我创建数据库的代码
model = new QSqlRelationalTableModel(this, *db);
model->setTable("cv");
model->setFilter("cv_id = "+currentCV+"");
model->removeColumns(0,1);
model->select();
ui->tableView->show();
ui->tableView->setModel(model);
1条答案
按热度按时间nkhmeac61#
你有两个选择。
1.在数据库中创建事件触发器。事件触发器在用户更改数据库表结构、创建表或更改列时工作。因此,这些触发器在用户执行任何DDL命令(更改表、添加列、创建索引、删除表等)时工作。您可以使用事件触发器将这些命令插入日志表。
1.您的数据库结构(所有表、列、索引等)都存储在
information_shema
中。您可以选择这些表中的数据并将其保存到某个位置,然后将其与已更改的数据进行比较。