2013-05-20 7 views
0

Я новичок в программировании на Android и ищу лучший способ работы с базой данных sqlite. Мне нужно иметь возможность загружать базу данных в приложение и вводить данные, а затем экспортировать. Мне нужно будет сделать это без подключения к Интернету. Я смотрел примеры, как и все, что мог.База данных Android SQLITE не интернет

Я очень много вижу при загрузке базы данных и приложению, которое копирует ее в системную базу данных, оставляя вам 2 базы данных.

http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications/

однако я думаю, что я ищу способ работать непосредственно с базой данных, возможно, прикрепленного к сд карты. после ввода данных пользователь может подключаться через usb и копировать и отправлять по электронной почте базу данных. * Помните, что интернет-соединение не будет. С другой стороны, база данных может быть скопирована на SD-карту, и приложение сможет читать и писать на нее. Возможно, это не лучший способ? или мне нужно использовать 2 базы данных?

Я не ищу никого, кто мог бы шаг за шагом меня, но еще лучше, но направил меня в правильном направлении. возможно, ссылки на некоторые статьи или статьи были бы очень полезными. Всем спасибо!!

+1

Что вы пытаетесь сделать точно? Забудьте о том, что интернет-соединение не будет, что не имеет значения. SQLite будет работать отлично, без подключения к Интернету; почему вы думаете, что это требует? –

+0

У меня есть команда, которая будет в начале дня выходить в поле и собирать образцы данных. Они будут введены в базу данных и в конце дня отправлены мне, чтобы обновить нашу систему. Эта информация необходима для компиляции в ночное время, и сейчас им нужно все взять за руку, либо либо заплатить кому-то, чтобы делать много ввода данных, либо вводить его каждую ночь. Я хотел бы оптимизировать этот процесс с помощью приложения. BTW У меня есть андроид для изучения взрыва! :) – user1017425

+0

У меня был бы веб-сервис во внутренней сети, который приложения будут передавать данные каждый вечер. –

ответ

0

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

Измените DB вспомогательный класс, чтобы отразить эти изменения:

private final static DB_PATH = Environment.getExternalStorageDirectory(); 
private final static DB_NAME = "my_database"; 

public DBHelper(Context ctx) 
{ 
    database = SQLiteDatabase.openDatabase(DB_PATH + "/" + DB_NAME, null, SQLiteDatabase.OPEN_READWRITE); 
} 

Теперь у вас есть база данных на вашей SD-карты и ничего в традиционном месте. Возможно, вы захотите просто сохранить рабочую базу данных в традиционном расположении ради избыточности, если она не слишком велика. Карты SD не работают, устройства терпят неудачу и т. Д., Поэтому копирование базы данных на SD-карту даст вам уровень страхования.

+0

еще один вопрос, который я читаю, что первичный должен быть _id, это правильно? В моей базе данных у меня есть первичные настройки для других. Могу ли я использовать их или у помощника БД есть _id? – user1017425

+1

Stack Overflow препятствует расширенным обсуждениям. Попытайтесь удержать каждый вопрос до своего отдельного Q & A, чтобы люди, ищущие ответы, получали именно то, что им нужно, ни больше, ни меньше. – MarsAtomic

Смежные вопросы