Как подключить sqlite db к единице - PullRequest
0 голосов
/ 31 октября 2018

У меня есть предварительно загруженный файл БД, который присутствует на диске c в моей системе. Если я подключу этот файл базы данных к проекту Unity и попытаюсь получить данные из таблиц, он не получит никаких данных, и я также не получу никаких исключений. Если я открою этот файл базы данных (который присутствует на диске c) с помощью программы администрирования sqlite, он покажет данные в таблицах. Пожалуйста, предложите любую идею, чего мне не хватает. Вот код, который я использую для подключения базы данных к моему проекту Unity.

   Public void OpenDatabase()
   {
     var dbfileName = "Testuser.db"

     var _filePath = File.GetFullPath(dbfileName);

     var _connectionString = "URI=file:" + _filePath;

     dbcon = new SqliteConnection(_connectionString);

     dbcon.Open();
   }

Когда я пытаюсь создать и прочитать файл БД следующим образом, работает хорошо.

Рабочий код:

     Public void OpenDatabase()
     {

       var _filePath = Application.PersistanceDataPath + "/" + "owndbfile.db";

       if (!File.Exists(_filePath))
        {                                              
            WWW loadDB = new WWW("jar:file://" + Application.PersistanceDataPath + "!/assets/" + "owndbfile.db");

            while (!loadDB.isDone) { }

            // then save to Application.persistentDataPath

            File.WriteAllBytes(_filePath, loadDB.bytes);
        }

       var _connectionString = "URI=file:" + _filePath;

       dbcon = new SqliteConnection(_connectionString);

       dbcon.Open();
   }

Пожалуйста, предложите любую идею для чтения данных из таблиц, если файл db присутствует на одном из дисков в системе, а не присутствует в пути "персистентности приложения".

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