Я использую PDO для доступа к двум базам данных SQLite 3 в PHP. Я хочу переключить файлы базы данных во время запроса, переименовав их, но я не могу этого сделать, пока файлы открыты, так как он дает ошибку, что файл используется другим процессом. Я попытался отключить постоянные соединения и установить дескрипторы в null, но не работает.
Не существует способа закрыть дескриптор PDO и освободить блокировку в файле базы данных?
Я считаю, что unset($var)
делает это, я использую его в моем проекте pdo sqlite, и он работает так, как будто я хочу это 🙂
Установите все ссылки на дескриптор на null
(или на что-либо, кроме объекта PDO , действительно), и среда выполнения уничтожит объект, который закроет соединение.
$db = new PDO('...'); // Do some stuff $db = null; // Assuming this was the last reference to that PDO // object, the runtime will destroy the object and // its connection.