ver usar una tutorial studio proyectos para hacer español ejemplo descargar datos consultas conectar con como android database sqlite sqliteopenhelper

usar - Ejemplo de SQLite para Android



sqlite android tutorial español (4)

La clase DBHelper es la que maneja la apertura y el cierre de las bases de datos sqlite, así como una creación y actualización, y un artículo decente sobre cómo funciona todo está here . Cuando comencé a usar Android fue muy útil (sin embargo he sido objetivo-c últimamente, y olvidé la mayor parte del uso.

Soy nuevo en Android y tengo que crear una aplicación donde necesito usar una base de datos SQLite. No estoy tan bien equipado con el SQLite.

¿Podría decirme cuál es el propósito y el uso de la clase SQLiteOpenHelper y proporcionar un ejemplo simple de creación e inserción de la base de datos?


La clase de ayuda Sqlite nos ayuda a gestionar la creación de bases de datos y la administración de versiones. SQLiteOpenHelper se ocupa de todas las actividades de gestión de bases de datos. Para usarlo,
1. onCreate(), onUpgrade() métodos onCreate(), onUpgrade() de SQLiteOpenHelper . Opcionalmente anula el método Open ().
2. Utilice esta subclase para crear una base de datos legible o modificable y use los cuatro métodos API de SQLiteDatabase insert(), execSQL(), update(), delete() para crear, leer, actualizar y eliminar filas de su tabla.

Ejemplo para crear una tabla MyEmployees y seleccionar e insertar registros:

public class MyDatabaseHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "DBName"; private static final int DATABASE_VERSION = 2; // Database creation sql statement private static final String DATABASE_CREATE = "create table MyEmployees ( _id integer primary key,name text not null);"; public MyDatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } // Method is called during creation of the database @Override public void onCreate(SQLiteDatabase database) { database.execSQL(DATABASE_CREATE); } // Method is called during an upgrade of the database, @Override public void onUpgrade(SQLiteDatabase database,int oldVersion,int newVersion){ Log.w(MyDatabaseHelper.class.getName(), "Upgrading database from version " + oldVersion + " to " + newVersion + ", which will destroy all old data"); database.execSQL("DROP TABLE IF EXISTS MyEmployees"); onCreate(database); } }

Ahora puedes usar esta clase como abajo,

public class MyDB{ private MyDatabaseHelper dbHelper; private SQLiteDatabase database; public final static String EMP_TABLE="MyEmployees"; // name of table public final static String EMP_ID="_id"; // id value for employee public final static String EMP_NAME="name"; // name of employee /** * * @param context */ public MyDB(Context context){ dbHelper = new MyDatabaseHelper(context); database = dbHelper.getWritableDatabase(); } public long createRecords(String id, String name){ ContentValues values = new ContentValues(); values.put(EMP_ID, id); values.put(EMP_NAME, name); return database.insert(EMP_TABLE, null, values); } public Cursor selectRecords() { String[] cols = new String[] {EMP_ID, EMP_NAME}; Cursor mCursor = database.query(true, EMP_TABLE,cols,null , null, null, null, null, null); if (mCursor != null) { mCursor.moveToFirst(); } return mCursor; // iterate to get each value. } }

Ahora puede usar la clase MyDB en su actividad para tener todas las operaciones de la base de datos. Los registros de creación le ayudarán a insertar los valores de manera similar, puede tener sus propias funciones para actualizar y eliminar.


Los siguientes enlaces te puedo ayudar

sqlite-tutorial

2. Tutorial 1

Clase de Ayudante de Base de Datos:

Una clase de ayuda para gestionar la creación de bases de datos y la administración de versiones.

Se crea una subclase que implementa onCreate(SQLiteDatabase) , onUpgrade(SQLiteDatabase, int, int) y opcionalmente onOpen(SQLiteDatabase) , y esta clase se encarga de abrir la base de datos si existe, crearla si no es así y actualizarla según sea necesario. . Las transacciones se utilizan para garantizar que la base de datos esté siempre en un estado sensible.

Esta clase facilita las implementaciones de ContentProvider para diferir la apertura y actualización de la base de datos hasta el primer uso, para evitar el bloqueo del inicio de la aplicación con actualizaciones de base de datos de larga ejecución.

Necesita más refiera este enlace Sqlite Helper