2016-08-23 5 views
0

В моем приложении мне нужна база данных с разными таблицами, которую я бы написал раньше, а затем просто прочитал в приложении. Я знаю, как создать новую базу данных, написать и прочитать ее в приложении с помощью SQL, но я действительно не знаю, с какой программой (и в каком формате) я могу написать базу данных, прежде чем добавлять ее в папку с ресурсами.Как написать базу данных для приложения android

Помог бы мне с этим, пожалуйста?

+0

https://developer.android.com/guide/topics/data/data-storage.html#db –

ответ

0

Вы можете использовать SQLite, который является реализация на устройстве SQL. Имейте в виду, что это будет поддерживать только подмножество операций SQL, обнаруженное в большинстве традиционных реляционных БД. Если вам нужна полная поддержка SQL, вам придется писать серверные веб-службы, размещенные в других местах.

0

Для создания вашей базы данных вы можете использовать SQLiteOpenHelper.

Вот мой пример, чтобы создать простую базу данных, которая есть магазин Город с 2 поданным является CITY_ID и city_name:

public class DiLiBusDatabaseHelper extends SQLiteOpenHelper { 
private static final String DATABASE_NAME = "DiLiBusDB"; 
private static final String TBL_CITY = "City"; 
private static final String CITY_ID_FIELD = "City_ID"; 
private static final String CITY_NAME_FIEDL = "City_Name"; 
private SQLiteDatabase database; 
private static DiLiBusDatabaseHelper mInstance = null; 
Context context; 
//synchronized to make sure have only one thread is run at the same time 
public static DiLiBusDatabaseHelper getInstance(Context context){ 
    if(mInstance == null){ 
     mInstance = new DiLiBusDatabaseHelper(context.getApplicationContext()); 
    } 
    return mInstance; 
} 

private DiLiBusDatabaseHelper(Context context) { 
    super(context, DATABASE_NAME, null, 2); 
    this.context = context; 
    this.database = getWritableDatabase(); 
} 

@Override 
public void onCreate(SQLiteDatabase db) { 
    String query = "CREATE TABLE"+" "+TBL_CITY+"("+CITY_ID_FIELD+" "+"TEXT PRIMARY KEY,"+CITY_NAME_FIEDL+" "+"TEXT"+");"; 
    String queryIndex = "CREATE INDEX city_name_idx ON"+ " "+TBL_CITY +"("+CITY_NAME_FIEDL+");"; 
    db.execSQL(query); 
    db.execSQL(queryIndex); 
} 

@Override 
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 

} 

} р/с: Я с помощью Singleton pattern создать свою базу данных. Кроме того, если вы хотите сохранить свою БД в SDCard, и может проверить это link

+0

Прошу прощения, я не то, что искал: мне нужно иметь в своем приложении базу данных, уже созданную вне приложения. Спасибо, в любом случае –

+0

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

+0

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

0

Есть много библиотек для базы данных:

Этих является самым простым способом создания базы данных, поскольку вы работаете с определенными моделями данных.

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