Я пытаюсь взять файл CSV
и импортировать эти данные в Android SQLite3
. Приложение работает нормально, без ошибки SQLite
в LogCat
. Я не уверен, почему данные не вводятся. Я убедился, что программа на самом деле пытается вставить execSQL
, преднамеренно вызывая синтаксическую ошибку SQLite
в команде вставки, и она появилась на LogCat
. Таким образом, он находит файл CSV
, и он добирается до вставки execSQL
. Я просто не знаю, почему он не вставляет.Android - SQLite Не вставляя строки
private static final String CREATE_TABLE_MOVIES = "CREATE TABLE movies (_id integer primary key autoincrement, title text not null, year integer not null, director text not null);";
public DbAdapter(Context ctx){
super(ctx, DATABASE_NAME, null, DATABASE_VERSION);
mContext = ctx;
this.mDb = getWritableDatabase();
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(CREATE_TABLE_MOVIES);
try {
BufferedReader in = new BufferedReader(new InputStreamReader(mContext.getAssets().open("movies.csv")));
String line;
while((line = in.readLine()) !=null) {
String[] RowData = line.split(",");
moviesID = RowData[0];
moviesTitle = RowData[1];
moviesYear = RowData[2];
moviesDirector = RowData[3];
db.execSQL("insert into movies(_id, title, year, director) values(" + moviesID + ", '" + moviesTitle + "', " + moviesYear + ", '" + moviesDirector + "');");
}
} catch (IOException e) {
e.printStackTrace();
}
Попал в какое-либо исключение? –
Никаких исключений нигде, о которых я знаю. LogCat и консоль чисты. – cYn