Ejemplo para borrar un registro de una base de datos sqlite en Android.
public void borra(View v){
BaseSQLiteOpenHelper base = new BaseSQLiteOpenHelper(this,"agenda",null,1);
SQLiteDatabase bd = base.getWritableDatabase();
String codigo=etId.getText().toString();
int cant=bd.delete("persona","codigo="+codigo,null);
bd.close();
etId.setText("");
etNo.setText("");
etEm.setText("");
if (cant==1){
Toast.makeText(this, "Se borro el registro", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "No existe ese codigo", Toast.LENGTH_SHORT).show();
}
}
Continuando con el video del proyecto anterior con sqlite, en este video vemos como realizar consultas a la base de datos.
El codigo añadido es:
public void consulta(View v){
if(!etId.getText().toString().equals("")){
BaseSQLiteOpenHelper base = new BaseSQLiteOpenHelper(this,"agenda",null,1);
SQLiteDatabase bd = base.getWritableDatabase();
String codigo=etId.getText().toString();
Cursor fila =bd.rawQuery("select nombre,email from persona where codigo="+codigo,null);
if(fila.moveToFirst()){
etNo.setText(fila.getString(0));
etEm.setText(fila.getString(1));
}else{
Toast.makeText(this, "No existe persona con ese codigo", Toast.LENGTH_SHORT).show();
}
bd.close();
}else{
Toast.makeText(this, "El campo id no puede estar vacio", Toast.LENGTH_SHORT).show();
}
}
Como continuacion del video anterior de creacion de una aplicacion sencilla para guardar datos de las cajas, en el siguiente video se amplia dicha aplicacion, dotandola de una consulta a la base de datos para obtener las ventas entre dos fechas indicadas.
En el siguiente video podras ver la ultima aplicacion que he creado con el lenguaje de programacion python, es una aplicacion sencilla que al introducirle los datos de efectivo y tarjetas del comercio, genera automaticamente un archivo de texto con los datos necesarios para contabilizar la venta y los cobros, guardando dichos datos en una base de datos sqlite que se puede consultar en cualquier momento.
El codigo completo de la aplicacion esta en github.
Ejemplo de aplicacion creada con Python, para generar los datos que usaremos para crear los asientos contables requeridos de ventas sobre las cajas diarias.
Es una aplicacion con interfaz grafica en la que se introducen los datos de efectivo y tarjetas de dos tiendas y calcula la venta total, desglosa la base imponible y el iva, pasando seguidamente a guardar los datos en una base de datos sqlite y en un archivo de texto que imprimira inmediatamente.
Puedes ver el codigo completo en github.
En esta entrada preparo nuestra aplicacion para listar los registros grabados en la base de datos Sqlite, tambien creamos una funcion para mostrar mensajes.
Agenda
#AGENDA PYTHON
#CON SQLITE
#IMPORTA MODULO
from tkinter import *
from BDatos import *
from tkinter import messagebox
#VARIABLES
listado=[]
ANCHO=560
ALTO=540
POSX=400
POSY=400
anchoAlto=(str(ANCHO)+”x”+str(ALTO))
posicionX=”+”+str(POSX)
posicionY=”+”+str(POSY)
colorVentana=”blue”
colorFondo=”blue”
colorLetra=”white”
#funcion pruebas
def mostrarMensaje():
print(“Pruebas”)
#FUNCIONES
def mensaje(titulo,texto):
messagebox.showinfo(titulo,texto)
def listar():
if(len(listado)>0):
#borra lista
listado.clear()
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
consulta.execute(“SELECT id,nombre,apellidos,telefono,email from agenda”)
for i in consulta:
id=(i[0])
nombre=(i[1])
apellidos=(i[2])
telefono=(i[3])
email=(i[4])
listado.append(i)
listado.sort()
conexion.close()
try:
textLista.delete(1.0,END)
except:
mensaje(“Listado”,”error en listado”)
textLista.insert(INSERT,”idtNombrettApellidosttTelefonon”)
for elemento in listado:
id=elemento[0]
nombre=elemento[1]
apellidos=elemento[2]
telefono=elemento[3]
textLista.insert(INSERT,id)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,nombre)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,apellidos)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,telefono)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,”n”)
#SQLITE
import sqlite3
#CREA TABLA
def creaTabla():
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
sql=”””CREATE TABLE IF NOT EXISTS agenda(id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
nombre VARCHAR(20) NOT NULL, apellidos VARCHAR(20) NOT NULL, telefono VARCHAR(14) NOT NULL,
email VARCHAR(20) NOT NULL)”””
if(consulta.execute(sql)):
print(“Tabla creada”)
else:
print(“No se pudo crear la tabla”)
conexion.close()
#INSERTAR DATOS
def inserta(nombre,apellidos,telefono,email):
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
datos=(nombre,apellidos,telefono,email)
sql=”””INSERT INTO agenda(nombre,apellidos,telefono,email) VALUES (?,?,?,?)”””
if(consulta.execute(sql,datos)):
print(“Datos guardados”)
else:
print(“No se pudo guardar el dato”)
conexion.commit()
conexion.close()
Modificar y borrar datos de Sqlite sobre el ejemplo visto anteriormente.
#SQLITE import sqlite3
#CONECTAMOS conexion=sqlite3.connect(“agenda.db”) #CURSOR consulta=conexion.cursor() #MODIFICACION DE DATOS consulta.execute(“UPDATE agenda SET TELEFONO = 38874997 where ID= 2”) consulta.close() conexion.commit() conexion.close() #CONECTAMOS conexion=sqlite3.connect(“agenda.db”) #CURSOR consulta=conexion.cursor() #BORRADO DE DATOS consulta.execute(“DELETE from agenda where ID= 2”) consulta.close() conexion.commit() conexion.close()
#CONSULTA DE DATOS INSERTADOS conexion=sqlite3.connect(“agenda.db”) consulta=conexion.cursor() consulta.execute(“SELECT id,nombre,apellidos,telefono from agenda”) for i in consulta: print(“ID= “, i[0]) print(“NOMBRE= “, i[1]) print(“APELLIDOS= “, i[2]) print(“TELEFONO= “, i[3],”n”) conexion.close()