EmpezarEmpieza gratis

Enviar - Extraer - Limpiar

Ya has usado dbGetQuery() varias veces. Es una función virtual del paquete DBI, pero en realidad la implementa el paquete RMySQL. Entre bambalinas, se realizan los siguientes pasos:

  • Enviar la consulta especificada con dbSendQuery();
  • Extraer el resultado de ejecutar la consulta en la base de datos con dbFetch();
  • Limpiar el resultado con dbClearResult().

Esta vez no usemos dbGetQuery() y apliquemos los pasos anteriores. Es pesado de escribir, pero te permite extraer el resultado de la consulta por partes en lugar de todo de una vez. Puedes hacerlo especificando el argumento n dentro de dbFetch().

Este ejercicio forma parte del curso

Importación intermedia de datos en R

Ver curso

Instrucciones del ejercicio

  • Revisa la llamada a dbSendQuery() que ya está escrita para ti. Selecciona los comentarios de los usuarios con un id mayor que 4.
  • Usa dbFetch() dos veces. En la primera llamada, importa solo dos registros del Resultado de la consulta estableciendo el argumento n en 2. En la segunda llamada, importa todas las consultas restantes (no especifiques n). En ambas llamadas, simplemente imprime los data frames resultantes.
  • Limpia res con dbClearResult().

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

# Connect to the database
library(DBI)
con <- dbConnect(RMySQL::MySQL(),
                 dbname = "tweater",
                 host = "courses.csrrinzqubik.us-east-1.rds.amazonaws.com",
                 port = 3306,
                 user = "student",
                 password = "datacamp")

# Send query to the database
res <- dbSendQuery(con, "SELECT * FROM comments WHERE user_id > 4")

# Use dbFetch() twice



# Clear res
Editar y ejecutar código