Documente Academic
Documente Profesional
Documente Cultură
Proyecto laboratorio
Creamos nuestra bd en SQLite y luego en la carpeta src creamos un paquete nuevo para la
clase de la bd
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
}
public void onUpgrade(SQLiteDatabase db, int versionAnterior, int
versionNueva){
}
public void createAnemptyDB(){
this.getReadableDatabase();
}
package com.example.laboratorios.db;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import android.content.Context;
import android.util.Log;
JCVB 1
2 PROYECTO CONTROL LABORATORIOS APLICACIONES MOBILES CON ANDROID
}
return checkDB != null ? true:false;
}
import android.content.ContentProvider;
import android.content.ContentValues;
import android.content.UriMatcher;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.net.Uri;
import android.provider.BaseColumns;
import android.util.Log;
JCVB 2
3 PROYECTO CONTROL LABORATORIOS APLICACIONES MOBILES CON ANDROID
// Nombres de columnas
//public static final String COL_IDLABORATORIO =
"idlaboratorio";
public static final String COL_NOMBRELABORATORIO =
"nombrelaboratorio";
public static final String COL_DESCRIPCIONLABORATORIO =
"descripcionlaboratorio";
}
public static final class EstadoBaseColumns implements BaseColumns {
private EstadoBaseColumns() { }
// Nombres de columnas
public static final String COL_NOMBREESTADO = "nombreestado";
public static final String COL_DESCRIPCIONESTADO =
"descripcionestado";
}
public static final class LabEnUsoBaseColumns implements BaseColumns {
private LabEnUsoBaseColumns() { }
// Nombres de columnas
public static final String COL_IDLABORATORIO = "idlaboratorio";
}
public static final class TiempoenUsoBaseColumns implements
BaseColumns {
private TiempoenUsoBaseColumns() { }
JCVB 3
4 PROYECTO CONTROL LABORATORIOS APLICACIONES MOBILES CON ANDROID
//BASE DE DATOS
private MySqliteHelper dbh;
private static final String BD_NAME="lab.db";
private static final int BD_VERSION=1;
//UriMatcher
private static final int LABORATORIO = 1;
private static final int LABORATORIO_ID = 2;
private static final UriMatcher uriMatcher;
//Inicializamos el UriMatcher
static {
uriMatcher = new UriMatcher(UriMatcher.NO_MATCH);
uriMatcher.addURI("PACKAGE_NAME", "TABLE_LABORATORIO",
LABORATORIO);
uriMatcher.addURI("PACKAGE_NAME", "TABLE_LABORATORIO/#",
LABORATORIO_ID);
}
@Override
public boolean onCreate() {
// creamos una instancia de la clase MySqliteHelper y le pasamos
x parametro en nom de la BD y la version
//DB_NAME= lab.db
//para q cree en la carpeta
data/data/com.example.laboratorios/databases/lab.db
dbh = new MySqliteHelper(getContext(), BD_NAME, null, BD_VERSION);
if (MyDBTool.existFileInAssetsFolder(getContext(), BD_NAME)){
//obtenemos el path exista o no la base de datos
String dbInternPath =
getContext().getDatabasePath(BD_NAME).getAbsolutePath();
if(MyDBTool.checkDatabase(dbInternPath)){
Log.i("BD","BD available"+ dbInternPath);
}else{
Log.i("BD","First validation: no Exist" + dbInternPath);
//sino esiste se llama al metodo para crear una Bd vacia
//teniendo asi todo el path en el dispositivo movil
dbh.createAnemptyDB();
MyDBTool.copyDatabaseFromAssetesFolder(getContext(),
BD_NAME, dbInternPath);
if(MyDBTool.checkDatabase(dbInternPath)){
Log.i("BD","Second validation:
Exist"+dbInternPath);
}else{
Log.i("BD","Second validation: NO
Exist"+dbInternPath);
}
}
}else{
Log.i("BD","BD file does not exist on asstes folder");
}
return true;
JCVB 4
5 PROYECTO CONTROL LABORATORIOS APLICACIONES MOBILES CON ANDROID
@Override
public Uri insert(Uri uri, ContentValues values) {
// TODO Auto-generated method stub
return null;
}
@Override
public Cursor query(Uri uri, String[] projection, String selection,
String[] selectionArgs, String sortOrder) {
// TODO Auto-generated method stub
// Si es una consulta a un ID concreto construimos el WHERE
String table= null;
if (uriMatcher.match(uri) == LABORATORIO) {
table=TABLE_LABORATORIO;
}
SQLiteDatabase db = dbh.getWritableDatabase();
return cursor;
}
@Override
public int update(Uri uri, ContentValues values, String selection,
String[] selectionArgs) {
// TODO Auto-generated method stub
return 0;
}
@Override
public int delete(Uri arg0, String arg1, String[] arg2) {
// TODO Auto-generated method stub
return 0;
}
@Override
public String getType(Uri uri) {
// TODO Auto-generated method stub
return null;
}
}
5.-
JCVB 5