80 lines
2.3 KiB
Python
80 lines
2.3 KiB
Python
"""
|
|
CURSORES
|
|
|
|
Estructura de contról, usada para recorrer los registros (y potencial
|
|
el procesamiento) de los registros del resultado de una consulta.
|
|
|
|
Metodos pricipales
|
|
|
|
Execute:
|
|
Ejecuta una consulta SQL, puede estar parametrizada.
|
|
Soporta todos los tipods de 'playholders' para reemplazo
|
|
por variables. Parametros (?) y playjolders con nombre.
|
|
|
|
Execute Many:
|
|
Ejecuta un conjunto de parametros
|
|
personalizados.
|
|
|
|
Execute Script:
|
|
Ejecuta múltiples consultas. Ejecuta un commit
|
|
antes.
|
|
|
|
Fetchone:
|
|
Extrae la siguiente fila del conjunto resultado de la consulta
|
|
Devuelve una secuencia, o none si no quedan datos.
|
|
|
|
Fetchmany:
|
|
Extrae el sgte. conjunto de filas de la respuesta, devolviendo
|
|
una lista, Si no hay datos, devuelve una lista vacía.
|
|
Se especifica el nro de filas a extraer o por defecto toma el
|
|
valor de la variable 'array size' del cursor.
|
|
|
|
Fetchall:
|
|
Extrae todas las filas que quedan "sin consumir", en el conjunto
|
|
resultado de la consulta. Devuelve una lista.
|
|
|
|
Close:
|
|
Cierra el cursor, queda inutilizado, Se levanta una excepción
|
|
si se intenta usar (ProgrammingError).
|
|
|
|
Atributo Connection:
|
|
Solo lectura, provee la conexión a la base de datos utilizada
|
|
por el cursor.
|
|
ej.
|
|
"""
|
|
import sqlite3
|
|
|
|
# Conexión a la base de datos
|
|
conn = sqlite3.connect(":memory:")
|
|
|
|
# Cursor
|
|
cursor = conn.cursor()
|
|
|
|
# Crear tabla
|
|
cursor.execute("""CREATE TABLE moneda
|
|
(ID integer primary key, nombre text, simbolo text)""")
|
|
|
|
# Insertar datos de monedas
|
|
cursor.execute("INSERT INTO moneda VALUES (1, 'Peso (CLP)', '$')")
|
|
cursor.execute("INSERT INTO moneda VALUES (2, 'Dólar (USD)', 'U$')")
|
|
|
|
# Guardar cambios
|
|
conn.commit()
|
|
|
|
# Consultar monedas
|
|
query = "SELECT * FROM moneda"
|
|
|
|
print("Fetch one:")
|
|
# Obtener la respuesta (filas)
|
|
monedas = cursor.execute(query).fetchone()
|
|
print(monedas)
|
|
|
|
print(cursor.fetchone())
|
|
print(cursor.fetchone())
|
|
|
|
print("Fetch all:")
|
|
monedas = cursor.execute(query).fetchall()
|
|
print(monedas)
|
|
|
|
conn.close()
|