コード例 #1
0
        private SqliteDatabase(ISqlite3 sqlite3, string path, SqliteOpen flags)
        {
            _sqlite3 = sqlite3;
            var result = _sqlite3.OpenV2(path, out _database, (int)flags, null);

            if (result != SqliteResult.Ok)
            {
                var message = $"Unable to open " + path + ".";

                if (_database.IsValid())
                {
                    var errorMessage = _sqlite3.Errmsg(_database);
                    _sqlite3.Close(_database);
                }

                throw new SqliteException(message, sqlite3.GetError(result));
            }

            Path = path;
        }
コード例 #2
0
        public void Dispose()
        {
            var result = _sqlite3.Close(_database);

            _database = IntPtr.Zero;
        }