SQLite 3: Проблема массовой загрузки данных: Ошибка 14 База данных не найдена - PullRequest
1 голос
/ 28 января 2009

У меня есть приложение для iPhone, которое используется для загрузки данных для предварительного заполнения базы данных данными, которые будут отправлены в отдельном приложении. Когда я запускаю программу, я читаю из файла XML, и записи вставляются в базу данных.

Каждый раз, когда я нажимаю 247-ю запись в списке, база данных возвращает ошибку 14, база данных не найдена. Если я остановлю программу, удалите 247 записей из только что вставленного XML-файла, и я снова перезапущу программу ... происходит то же самое. Будут вставлены следующие 247 записей, затем ошибка с ошибкой 14.

У меня более 30 000 записей для загрузки. Загрузка этих 247 записей за один раз не очень хороший вариант.

Есть идеи, что не так?

Ответы [ 3 ]

1 голос
/ 11 февраля 2009

DB2 имеет функции в своих командах IMPORT и LOAD, которые позволяют уровень фиксации. Возможно, это не лучший ответ, но проверьте документы, чтобы увидеть, есть ли у вас способ фиксировать каждые 200 строк или около того. Таким образом, это без помощи рук.

0 голосов
/ 28 января 2009

Как вы управляете транзакциями? Вы, вероятно, не хотите вставлять все в один блок, но не хотите добавлять каждую запись в отдельный блок.

0 голосов
/ 28 января 2009

Я понятия не имею, что там не так, но, возможно, вы можете автоматически закрывать и повторно открывать соединение с базой данных каждые 200 записей, чтобы обойти это.

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