Trimite - Preia - Șterge
Ai folosit dbGetQuery() de mai multe ori până acum. Aceasta este o funcție virtuală din pachetul DBI, implementată în realitate de pachetul RMySQL. În spatele scenei, sunt efectuați următorii pași:
- Trimiterea interogării specificate cu
dbSendQuery(); - Preluarea rezultatului execuției interogării pe baza de date cu
dbFetch(); - Ștergerea rezultatului cu
dbClearResult().
De data aceasta, să nu folosim dbGetQuery() și să implementăm pașii de mai sus. E ceva mai mult de scris, dar îți oferă posibilitatea de a prelua rezultatul interogării în fragmente, nu dintr-o dată. Poți face acest lucru specificând argumentul n în interiorul funcției dbFetch().
Acest exercițiu face parte din cursul
Importul intermediar al datelor în R
Instrucțiuni pentru exercițiu
- Inspectează apelul
dbSendQuery()care a fost deja scris pentru tine. Acesta selectează comentariile utilizatorilor cu un id mai mare de 4. - Folosește
dbFetch()de două ori. În primul apel, importă doar două înregistrări din rezultatul interogării, setând argumentulnla2. În al doilea apel, importă toate înregistrările rămase (fără să specificin). În ambele apeluri, afișează pur și simplu datele rezultate. - Șterge
resfolosinddbClearResult().
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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