Я создаю Restful API для приложения для Android, используя уже имеющуюся базу данных Microsoft Access, которая уже используется для другого приложения (Visual Basic Application). вид двух разных приложений в одной базе данных.
Я могу подключиться к базе данных и выполнить запрос с помощью кода
$conn = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=$dbName; Uid=; Pwd=;");
Но когда база данных открыта, мои PHP-файлы выдают эту ошибку —
Uncaught PDOException: SQLSTATE[HY000] SQLDriverConnect: 63 [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key Temporary (volatile) Ace DSN for process 0xee0 Thread 0xa20 DBC 0xa0c78cd8 Jet'.
Есть ли способ обойти это?
После нескольких часов исследований и изучения разных языков я наконец-то нашел проблему.
При открытии Access создается дополнительный файл, который используется для совместного использования базы данных пользователями. Таким образом, пользователю потребуется разрешение не только для чтения файла, но и для изменения файла.
В общем, просто необходимо изменить настройки безопасности папки для чтения / записи / изменения для всех пользователей. И это было сделано.
Других решений пока нет …