Строка подключения SQLite не может содержать запятую? - PullRequest
0 голосов
/ 13 сентября 2018

Я получаю сообщение об ошибке от SQLite, когда строка подключения содержит запятую. Я не имею полного контроля над тем, где будет находиться база данных, поэтому возможно, что пользователь поместит ее в каталог, содержащий произвольные символы. В этом случае кажется, что наличие запятой (,) в пути вызывает ошибку при подключении. Вот строка подключения:

Data Source=C:/Users/Dan/AppData/LocalLow/Gravia Software, LLC/Gravia/exampleDatabase.db;

Это приводит к следующему исключению при попытке подключения:

ArgumentException: Invalid ConnectionString format for parameter "LLC/Gravia/exampleDatabase.db"

Похоже, что наличие запятой в строке подключения является проблемой. Я пытался экранировать команду (\,), заключая все это в кавычки, но это не имеет значения. Есть идеи?

Edit:

Фактический код, который я выполнял, взят с этой страницы: https://ornithoptergames.com/how-to-set-up-sqlite-for-unity/

var dbPath = "URI=file:" + Application.persistentDataPath + "/exampleDatabase.db";
using (var conn = new SqliteConnection(dbPath)) {
    conn.Open(); // Error occurs here
    // etc
}

Я попытался изменить URI = файл: для источника данных =, поскольку результат был таким же.

1 Ответ

0 голосов
/ 14 сентября 2018

Попробуйте это?

"Data Source=" + "C:/Users/Dan/AppData/LocalLow/Gravia Software," + "LLC/Gravia/exampleDatabase.db";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...