fetchall() en Python
Demostraremos el método de clase cursor
de Python fetchall()
y cómo usarlo en aplicaciones para recuperar datos de bases de datos en Python.
Utilice fetchall()
para recuperar datos de bases de datos en Python
La mayor parte del tiempo, trabajamos con la base de datos en nuestras aplicaciones. La base de datos es la parte más importante de nuestra aplicación que almacena datos.
Python usa el cursor
para recuperar datos de la base de datos. El fetchall()
es uno de los métodos de cursor
de Python que se utiliza para recuperar todas las filas de una determinada consulta.
Cuando queremos mostrar todos los datos de una determinada tabla, podemos usar el método fetchall()
para obtener todas las filas. Este método devuelve una lista de tuplas.
Si la consulta no tiene filas, devolverá una lista vacía. Veamos un ejemplo, creemos una tabla de ejemplo e intentemos obtener datos usando los métodos de cursor
de Python.
Para este ejemplo, usaremos la base de datos MySQL, por lo que debemos instalar el módulo mysql-connector-python
. Pero si quieres trabajar con otras bases de datos como PostgreSQL, necesitas usar Psycopg2
, o si estás trabajando en SQLite, necesitas usar sqlite3
.
Entonces instalaremos mysql-connector-python
ejecutando el siguiente comando.
pip install mysql-connector-python
Vamos a crear una nueva base de datos de ejemplo y una tabla dentro de MySQL.
La estructura de nuestra tabla será como se muestra a continuación.
Ahora, agreguemos algunos datos de demostración dentro de él, como se muestra a continuación.
Importaremos mysql-connector-python
y crearemos una conexión de base de datos dentro de una función en Python, como se muestra a continuación.
# python
import mysql.connector
def getRecords():
try:
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword"
)
mycursor = mydb.cursor()
print("Connected to MySQL")
Crearemos una consulta select
para obtener los datos de nuestra tabla.
# python
query = "SELECT * FROM test"
mydb.commit()
records = mycursor.fetchall()
print("Total rows are: ", len(records))
print("Printing each row")
for row in records:
print("ID: ", row[0])
print("Name: ", row[1])
print("Email: ", row[2])
print("Country: ", row[3])
print("\n")
mycursor.close()
Y al final, llamaremos a nuestra función.
# python
getRecords()
Producción:
El resultado anterior muestra que usar el método fetchall()
puede obtener fácilmente todas las filas de la consulta.
Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.
LinkedIn