Kirim - Ambil - Bersihkan
Anda sudah beberapa kali menggunakan dbGetQuery(). Ini adalah fungsi virtual dari paket DBI, tetapi sebenarnya diimplementasikan oleh paket RMySQL. Di balik layar, langkah-langkah berikut dilakukan:
- Mengirim kueri yang ditentukan dengan
dbSendQuery(); - Mengambil hasil eksekusi kueri pada basis data dengan
dbFetch(); - Membersihkan hasil dengan
dbClearResult().
Kali ini, jangan gunakan dbGetQuery() dan terapkan langkah-langkah di atas. Ini memang agak merepotkan untuk ditulis, tetapi memberi Anda kemampuan untuk mengambil hasil kueri secara bertahap, bukan sekaligus. Anda dapat melakukannya dengan menentukan argumen n di dalam dbFetch().
Latihan ini merupakan bagian dari kursus
Mengimpor Data Tingkat Menengah di R
Instruksi latihan
- Periksa pemanggilan
dbSendQuery()yang sudah dituliskan untuk Anda. Fungsi tersebut memilih komentar untuk pengguna dengan id di atas 4. - Gunakan
dbFetch()dua kali. Pada pemanggilan pertama, impor hanya dua rekaman dari Hasil kueri dengan menyetel argumennke2. Pada pemanggilan kedua, impor semua sisanya (jangan tentukann). Pada kedua pemanggilan, cukup cetak data frame yang dihasilkan. - Bersihkan
resdengandbClearResult().
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# 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