Подключение к URL Sqlite База данных C ++ - PullRequest
0 голосов
/ 15 января 2020

Есть ли способ, которым я могу подключиться к базе данных с названием shop.sqlite, которая находится по адресу: https://server/network/share/shop.sqlite (в идеале) или на: \\ имя_сервера \ sharedfolder \ shop.sqlite

В настоящее время я открываю базу данных в папке приложения, но для этого конкретного приложения я хотел бы записать в базу данных, расположенную в сети. Это возможно?

rc = sqlite3_open("shop.db", &db);

Ответы [ 2 ]

1 голос
/ 15 января 2020

Для URL HTTP / HTTPS: Нет. HTTP доступен только для чтения. HTTP можно использовать для записи (как еще я могу загрузить этот ответ?), Но это зависит от приложения c - для этого не существует стандартного широко поддерживаемого протокола, поэтому SQLite не будет знать об этом.

Для Windows общих файлов: Да . Просто используйте \\servername\sharedfolder\shop.sqlite в качестве пути. Если вы пишете это в программе на C ++, обязательно избегайте обратной косой черты: "\\\\servername\\sharedfolder\\shop.sqlite". Windows позволяет так же легко читать и записывать общие файлы, если они были на вашем жестком диске.

Если SQLite не нравится формат пути "UN C" (\\servername\) для некоторых Поэтому вы можете сопоставить \\servername\sharedfolder с буквой диска (скажем, Z:) и использовать букву диска (Z:\shop.sqlite). Тогда действительно выглядит как обычный диск.

0 голосов
/ 16 января 2020

Я использовал:

rc = sqlite3_open("\\\\my-computer\\c$\\inetpub\\wwwroot\\application\\Database\\shop.sqlite",&db);

Что сработало!

Я знаю, что это не рекомендуется, но он сделал именно то, что мне нужно, поэтому я очень благодарен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...