1. Buatlah koneksi ke MySQL dan gunakan/buatlah database yang
bernama employees_db. Tuliskan kode R yang digunakan (untuk koneksi dan
menggunakan/membuat database).
library(RMySQL)
## Loading required package: DBI
# Membuat koneksi ke MySQL Server
conn <- dbConnect(MySQL(),
user = "root",
password = "21032006",
host = "localhost")
# Membuat database employees_db
dbExecute(conn, "CREATE DATABASE IF NOT EXISTS employees_db")
## [1] 1
# Memilih database employees_db
dbExecute(conn, "USE employees_db")
## [1] 0
# Periksa apakah database berhasil dibuat
dbGetQuery(conn, "SHOW DATABASES")
karena soal nomor 2 itu dimisalkan dalam database ada tabel
employess yang berisi infomasi karyawan. maka kita buat dulu tabelnya
dan data tabelnya sesuai dengan keinginan kita karena datanya gaada di
soal. baru nanti jawab nomor 2
# Hapus tabel lama jika ada
dbExecute(conn, "DROP TABLE IF EXISTS employees")
## [1] 0
# Buat tabel employees
dbExecute(conn,
"
CREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(50),
position VARCHAR(50),
department VARCHAR(50),
salary INT)
")
## [1] 0
# Masukkan data baru
dbExecute(conn,
"
INSERT INTO employees VALUES
(1, 'Ariq', 'IT Staff', 'IT', 9000),
(2, 'Ahmad', 'HR Staff', 'HR', 8000),
(3, 'Fallah', 'Production Staff', 'Produksi', 5200),
(4, 'Iqbal', 'Sales Representative', 'Sales', 4800)
")
## [1] 4
3. Masih dalam tabel employees, ambil data karyawan yang bekerja di
departemen Sales. Tuliskan kode R yang digunakan.
df_sales <- dbGetQuery(conn,"SELECT * FROM employees
WHERE department = 'Sales'")
df_sales
4. Tambahkan data baru ke tabel employees dengan detail
berikut:
• id: 101
• name: “Son Heung Min”
• position: “Data Analyst”
• department: “Data Science”
• salary (IDR): 7000
Tulis kode R untuk menambahkan data tersebut ke tabel
employees.
dbExecute(conn,"INSERT INTO employees VALUES
(101, 'Son Heung Min', 'Data Analyst', 'Data Science', 7000)")
## [1] 1
##Menampilkan Data
menambah_data_baru<-dbGetQuery(conn,"SELECT*FROM employees")
print(menambah_data_baru)
## id name position department salary
## 1 1 Ariq IT Staff IT 9000
## 2 2 Ahmad HR Staff HR 8000
## 3 3 Fallah Production Staff Produksi 5200
## 4 4 Iqbal Sales Representative Sales 4800
## 5 101 Son Heung Min Data Analyst Data Science 7000
5. Perbaharui gaji karyawan dengan id 101 di tabel employees menjadi
8000. Gunakan query SQL untuk melakukan pembaruan ini serta tuliskan
kode R yang digunakan.
dbExecute(conn, "UPDATE employees SET salary = 8000 WHERE id = 101")
## [1] 1
##Menampilkan Data Karyawan yang Di-Update
update_gaji_karyawan_101<-dbGetQuery(conn,"SELECT*FROM employees WHERE id=101")
print(update_gaji_karyawan_101)
## id name position department salary
## 1 101 Son Heung Min Data Analyst Data Science 8000
6. Karyawan dengan id 101 telah resign. Bagaimana query untuk
menghapus data karyawan tersebut dari tabel employees? Tuliskan kode R
yang digunakan
dbExecute(conn, "DELETE FROM employees WHERE id = 101")
## [1] 1
##Menampilkan Data
data_akhir<-dbGetQuery(conn,"SELECT*FROM employees")
print(data_akhir)
## id name position department salary
## 1 1 Ariq IT Staff IT 9000
## 2 2 Ahmad HR Staff HR 8000
## 3 3 Fallah Production Staff Produksi 5200
## 4 4 Iqbal Sales Representative Sales 4800
7. Setelah selesai melakukan operasi, tutup koneksi ke database.
Tulis kode R yang digunakan.
dbDisconnect(conn)
## [1] TRUE