SQLite – No se pudo abrir el archivo de base de datos
Estoy codificando una aplicación Android de Xamarin, y estoy recibiendo un error al intentar crear una base de datos SQLite.
Aquí está mi código:
- Sqlite3 permission denied android
- Obtención de base de datos SQLite por adb shell en cmd
- ¿Por qué no puedo enviar sqlite a Android mediante el comando adb?
- Sqlite3 tabla con límite máximo de líneas (por elección) eficiencia
- SQLite static openDatabase error de método de base de datos en Android
string applicationFolderPath = System.IO.Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), "CanFindLocation"); string databaseFileName = System.IO.Path.Combine(applicationFolderPath, "CanFindLocation.db"); SQLite.SQLite3.Config(SQLite.SQLite3.ConfigOption.Serialized); var db = new SQLiteConnection (databaseFileName);
Aquí está el error que estoy recibiendo:
SQLite.SQLiteException: Could not open database file: /data/data/com.xamarin.docs.android.mapsandlocationdemo2/files/CanFindLocation/CanFindLocation.db (CannotOpen)
Tengo el mismo código funcionando en otra aplicación de Xamarin y me gustaría saber si la excepción tiene algo que ver con el nombre del paquete?
Gracias por adelantado
- Android table creation Fallo (cerca de "autoincrement": error de sintaxis)?
- Eliminar varias filas de contentprovider
- Pregunta de Android SQlite OnUpgrade
- Rowid en SQLite3 y Android
- Sqlite3_open_v2 ("/ data / data / com.android.packagename / databases / dump.sqlite", & handle, 1, NULL) falló
- Primera vez Cursor Operación es tan lento, cuando la consulta de datos a granel. ¿Cómo resolver?
- Cómo eliminar las viejas filas de la base de datos sqlite en android?
- ¿Cuál es el modo de subprocesamiento predeterminado de SQLite en Android?
¿Existe la ruta de la carpeta de ruta de acceso que está proporcionando a SQLite? Si no ha creado la carpeta CanFindLocation
entonces la apertura de una conexión a esa ruta fallará.
Tratar:
string applicationFolderPath = System.IO.Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), "CanFindLocation"); // Create the folder path. System.IO.Directory.CreateDirectory(applicationFolderPath); string databaseFileName = System.IO.Path.Combine(applicationFolderPath, "CanFindLocation.db"); SQLite.SQLite3.Config(SQLite.SQLite3.ConfigOption.Serialized); var db = new SQLiteConnection (databaseFileName);