Tutorial Bassic Mysql Bagian 6 - Mysql Replace Statement

Subscribe Dengan Account Google Untuk Membaca Artikel Tanpa Iklan
Tutorial Bassic Mysql Bagian 6 - Mysql Replace Statement

Di tutorial sebelumnya Anda telah belajar tentang penggunaan operator dan clausa di database Mysql.

Pada tutorial bassic Mysql bagian ke-6 ini, kita akan belajar tentang perbedaan utama antara statement MySQL REPLACE dan statement standar INSERT INTO dan UPDATE.

A) Statement REPLACE di MySQL


Statement MySQL REPLACE adalah cara alternatif untuk memasukkan dan memperbarui data dalam tabel database.

Stetement ini adalah ekstensi Standar SQL, yang menyisipkan atau memperbarui data dalam sebuah tabel.

Anda dapat menggunakan dua jenis sintaks untuk menyisipkan atau memperbarui data dengan pernyataan REPLACE.

Sintaks pertama sangat mirip dengan pernyataan SQL INSERT INTO standar, di mana Anda menggunakan perintah REPLACE, perhatikan kode berikut:

REPLACE INTO table_name (column1name, column2name, ...) 
VALUES (value1, value2, ...);

Sintaks kedua mirip dengan pernyataan SQL UPDATE standar, di mana Anda menggunakan perintah REPLACE dengan kata kunci SET untuk memperbarui data dalam tabel,  perhatikan kode berikut:

REPLACE INTO table_name SET column1name = value, column2name = value, ... ;

B) Bagaimana Statement INSERT INTO Bekerja ?


Pernyataan INSERT INTO digunakan untuk memasukkan data baru kedalam sebuah table.

Statement ini akan memeriksa apakah kunci unik sudah ada di tabel. Jika YA  maka akan memberikan response error, jika tidak maka data baru akan terbentuk.

Misalkan mengembalikan nilai "FALSE". Dalam hal ini, proses penyisipan data selesai, dan catatan data baru ditambahkan ke database.

Perhatikan bagan alur berikut ini:

ilustrasi statement inser into ilustrasi statement inser into // source coursera


C) Bagaimana Statement Update Bekerja ?


Statement update digunakan untuk memodifikasi record yang ada dengan data baru. Statement ini akan memeriksa apakah kunci unik sudah ada di tabel.

Misalkan mengembalikan nilai "FALSE". Dalam hal ini, proses update data ditolak, dan MySQL menghasilkan response error.

Misalkan mengembalikan nilai "True", dan proses update data selesai, kemudian data yang ada diubah dengan data baru.

Berikut ini ilustrasi bagan alur yang menunjukkan cara kerja pernyataan UPDATE :

ilustrasi bagan update data mysql ilustrasi bagan update data mysql // source coursera


D) Bagaimana Statement Replace Into Bekerja ?


Pernyataan REPLACE memeriksa apakah nilai kunci unik data yang dimaksud sudah ada di tabel sebelum memasukkannya sebagai catatan baru.

Pernyataan REPLACE INTO digunakan untuk memasukkan record baru atau memodifikasi record yang sudah ada.

Dari kediua kondisi diatas, mysql engine akan memeriksa apakah kunci unik dari catatan yang diusulkan sudah ada di tabel.

Misalkan mengembalikan nilai "FALSE". Dalam hal ini, pernyataan REPLACE menyisipkan catatan yang mirip dengan pernyataan INSERT INTO.

Misalkan nilai kunci sudah ada di tabel (dengan kata lain, kunci duplikat). Dalam hal ini, pernyataan REPLACE menghapus catatan data yang ada dan menggantinya dengan catatan data baru.

Ini terjadi terlepas dari apakah Anda menggunakan sintaks pernyataan REPLACE pertama atau kedua.

Bagan alur berikut menguraikan cara kerja pernyataan REPLACE INTO :

ilustrasi replace into mysql ilustrasi replace into mysql // source coursera

Setelah pernyataan REPLACE INTO digunakan untuk menyisipkan atau memodifikasi data, pertama-tama ditentukan apakah record data baru sudah ada di tabel, kemudian memeriksa apakah PRIMARY atau UNIQUE KEY cocok dengan salah satu catatan yang ada.

Jika tidak ada kunci yang cocok, REPLACE berfungsi seperti pernyataan INSERT biasa.

Jika tidak, statement ini akan menghapus record yang ada dan menggantinya dengan yang baru. Hal Ini dianggap sebagai modifikasi atau pembaruan dari catatan yang ada.

Namun, akan lebih baik jika Anda berhati-hati di sini. Misalkan Anda tidak menentukan nilai untuk kolom dalam klausa SET.

Statement REPLACE menggunakan nilai default (jika nilai default telah ditetapkan). Jika tidak, maka akan di set sebagai NULL.

E) Studi Kasus


Siapkan terlebih dahulu sebuah table dengan nama orders

CREATE TABLE Orders (OrderID INT NOT NULL PRIMARY KEY, ClientID VARCHAR(10), ProductID VARCHAR(10), Quantity INT, Cost DECIMAL(6,2));

Kemudian tambahkan beberapa data

INSERT INTO Orders (OrderID, ClientID, ProductID, Quantity, Cost) VALUES (1, "Cl1", "P1", 10, 500), (2, "Cl2", "P2", 5, 100), (3, "Cl3", "P3", 20, 800), (4, "Cl4", "P4", 15, 150), (5, "Cl3", "P3", 10, 450), (6, "Cl2", "P2", 5, 800), (7, "Cl1", "P4", 22, 1200), (8, "Cl1", "P1", 15, 150);

Tugas 1: Tulis pernyataan SQL REPLACE yang menyisipkan dua perintah baru dengan detail berikut:

Data orders 9:


  • OrderID = 9,

  • ClientID = "Cl1",

  • ProductID = "P1",

  • Quantity = 10,

  • Cost = 5000


Data orders 10:

  • OrderID = 10,

  • ClientID = "Cl2",

  • ProductID = "P2",

  • Quantity = 5,

  • Cost = 100


Tugas 2: Perhatikan bahwa biaya pesanan nomor 9 adalah 5.000. Ini adalah kesalahan. Pesanan harus berharga 500. Anda harus membantu mengubahnya menjadi 500 dengan menulis pernyataan REPLACE yang relevan.

F) Video Tutorial


 

Baca artikel lainya:


  1. Tutorial bassic Mysql bagian 1 - Create Read Update Delete

  2. Tutorial bassic Mysql bagian 2 - Inner, Left, Right, Cross Join

  3. Tutorial bassic Mysql bagian 3 - Filtering Data

  4. Tutorial bassic Mysql bagian 4 - Grouping Data 

  5. Tutorial bassic Mysql bagian 5 - Operator dan Clausa

  6. Membuat service OTP bagian 1 - OTP dan PIN

  7. Membuat service OTP bagian 2 - Sequence Diagram

  8. Membuat service OTP bagian 3 - Model dan Serializer

  9. Membuat  service OTP bagian 4 - Validate OTP

  10. Membuat  service OTP bagian 5 - Api Client Service

  11. Membuat service user login bagian 1 - Konfigurasi Database

  12. Membuat service user login bagian 2 - Serializer dan JWT

  13. Membuat CRUD service product bagian 1 - Models Product

  14. Membuat CRUD service product bagian 2 - Function Serializer

  15. Membuat CRUD service product bagian 3 - Api Client Service

  16. Membaut CRUD service product bagian 4 - Auth User

  17. Membuat CRUD service product bagian 5 - TDR File Log

  18. Membuat CRUD service product bagian 6 - Unit Test

  19. Membuat service user register bagian 1 - Django

  20. Membuat Service user register bagian 2 - Django

  21. Membuat service filter dan download file CSV di django

  22. Django upload file menggunakan FileSystemStorage

  23. Tips meningkatkan kualitas code pada bahasa python

  24. Cara memfilter tipe data string pada golang dan python

  25. Mengubah format datetime pada bahasa python

  26. Mengolah data CSV dengan python pandas

  27. Sample join data CSV di python menggunakan pandas

  28. Menggunakan redis PUB/SUB untuk aplikasi python

  29. Implementasi blockchain ethereum pada industri real estate

  30. 4 Cara mengubah dictionary ke json pada python