Как сохранить файл базы данных SQLite в оперативной памяти? - PullRequest
0 голосов
/ 25 сентября 2018

Хорошо, я знаю, что этот вопрос кажется странным, но позвольте мне представить мою проблему.Я строю приложение на основе Qt с SQLite в качестве базы данных.Я заметил несколько вещей.Всякий раз, когда вы выполняете такие операции, как манипулирование строкой по одной непосредственно в файле sqlite, это кажется медленным.Это потому, что он выполняет операции ввода-вывода над файлом, который хранится на жестком диске.Но когда я использую SSD вместо HDD, скорость значительно улучшается, потому что SSD имеет высокую скорость ввода-вывода.Но если я загружу таблицу в QSqlTableModel, мы сможем внести все изменения и сохранить ее, скорость хорошая.Это связано с тем, что в одном запросе данные выбираются из файла sqlite и сохраняются в оперативной памяти.И поэтому операции ввода-вывода меньше.Это заставило меня задуматься, возможно ли сохранить файл sqlite в оперативной памяти, когда мое приложение запускается, выполнять все мои операции, а затем, когда пользователь выбирает закрыть, в этот момент я могу сохранить файл на HDD?Кто-то может подумать, почему бы мне просто не использовать саму qsqltablemodel, но есть некоторые случаи для меня, которые включают создание таблиц и удаление таблиц, которые qt не поддерживает «из коробки», нам нужно выполнить запрос для этого.Так что если кто-то может указать мне, есть ли способ добиться этого в Qt, это было бы здорово!

...