sql - HaloEdukasi.com https://haloedukasi.com/sub/sql Mon, 31 Oct 2022 00:37:39 +0000 id-ID hourly 1 https://wordpress.org/?v=6.6.2 https://haloedukasi.com/wp-content/uploads/2019/11/halo-edukasi.ico sql - HaloEdukasi.com https://haloedukasi.com/sub/sql 32 32 Apa Perbedaan SQL dan NoSQL? https://haloedukasi.com/perbedaan-sql-dan-nosql Sun, 30 Oct 2022 02:05:16 +0000 https://haloedukasi.com/?p=39417 Standard Query Language (SQL)  Pengertian SQL SQL kepanjangan dari Structured Query Language. SQP merupakan suatu bahasa yang dapat membantu mengelola data dalam sebuah database relasional. Pada awal mula SQL hadir tidak digunakan untuk dijuluki sebagai jenis database namun seiring dengan berjalannya waktu SQL menjadi jenis database. Hal tersebut disebabkan oleh kemunculan jenis database baru yang […]

The post Apa Perbedaan SQL dan NoSQL? appeared first on HaloEdukasi.com.

]]>
Standard Query Language (SQL) 

Pengertian SQL

SQL kepanjangan dari Structured Query Language. SQP merupakan suatu bahasa yang dapat membantu mengelola data dalam sebuah database relasional. Pada awal mula SQL hadir tidak digunakan untuk dijuluki sebagai jenis database namun seiring dengan berjalannya waktu SQL menjadi jenis database.

Hal tersebut disebabkan oleh kemunculan jenis database baru yang memiliki query berbeda. SQL biasanya digunakan dalam database management system seperti Microsoft SQL Server, PostgreSQL, Sybase, dan Oracle.

Dalam setiap dataset membutuhkan karakteristik umum untuk menyimpan data dan mencocokan data dengan menggunakan bentuk tabel atau relasi, inilah yang disebut dengan database relasional.

SQL dikenalkan oleh Larry Ellison yang merupakan salah satu pendiri Oracle. 

Pada tahun 70-an, SQL dideskripsikan sebagai database yang dapat dikonstruksikan dan dikueri melalui implementasi dari petinggi IBM Edgar F. 

Cobb. Larry Ellison mencoba menggunakan SQL untuk membuat skema dan data yang dideskripsikan dalam beberapa kolom, sedangkan dalam setiap record SQL database disebut sebagai baris.

Fungsi SQL

Berikut beberapa fungsi yang dimiliki oleh SQL di antaranya:

  • SQL digunakan untuk menghapus data dari database.
  • Dapat memperbarui dan memasukkan data ke dalam database.
  • SQL dapat membuat prosedur baru kemudian disimpan dalam database.
  • Dapat mengatur hal akses dalam item, tabel, dan prosedur penting lainnya.
  • Dapat menjalankan kueri dan mengambil data yang dibutuhkan selama proses pengerjaan.
  • Keberadaan SQL dapat membantu bagian administrator untuk mengakses dan memodifikasi database.

Secara garis besar dapat disimpulkan bahwa konsep fungsionalitas yang dimiliki oleh SQL adalah bahasa khusus yang digunakan untuk membuat atau memproses database pada sebuah halaman website.

Hosting merupakan bagian yang tak kalah penting dalam menjalankan sebuah website, dengan memilih hosting terbaik maka website akan berjalan dengan lancar selain membuat rancangan database melalui SQL.

Jenis Perintah Dasar SQL

Dalam SQL terdapat tiga jenis perintah dasar, berikut di antaranya.

1. Data Definition Language 

Data Definition Language atau dapat disingkat menjadi DDL merupakan sebuah perintah yang berfungsi untuk mendeskripsikan data, seperti menghapus data, membuat tabel database baru, dan memodifikasi kumpulan data.

Dalam DDL terbagi menjadi lima kategori, di antaranya sebagai berikut.

  • Perintah Alter

Perintah Alter merupakan salah satu jenis DDL yang umumnya digunakan ketika seseorang ingin mengubah struktur tabel yang ada mulai dari nama tabel, menambahkan kolom, mengubah atau menghapus kolom, dan menambahkan atribut lainnya.

  • Perintah Create

Perintah create merupakan perintah untuk membuat tabel dan kolom baru di database. Selain itu, pengguna juga dapat dapat membuat kueri dengan contoh ‘CREATE DATABASE database_name.

  • Perintah Drop

Perintah drop dapat digunakan untuk menghapus database, tabel, dan kolom dalam indeks.

  • Perintah Rename

Perintah rename dapat digunakan untuk mengubah nama pada tabel atau kolom yang ada. Jika pengguna akan memakai perintah ini, maka kueri akan menjadi ‘RENAME TABLE old_table_name TO new_table_name’

  • Perintah Show

Perintah terakhir adalah perintah show yang menjadi bagian dari DDL. Perintah ini digunakan untuk menampilkan tabel yang ada.

2. Data Manipulation Language

Data Manipulation Language atau dapat disingkat menjadi DML. DML merupakan bagian dari database SQL yang digunakan untuk memanipulasi data. DML memiliki empat kategori perintah diantaranya yakni menghapus, memilih, menyisipkan, dan memperbarui.

  • Perintah Delete

Perintah delete merupakan perintah yang dapat digunakan ketika hendak menghapus record yang ada dalam sebuah tabel.

  • Perintah Insert

Perintah insert merupakan perintah yang dapat digunakan untuk menyisipkan record baru ke dalam tabel database.

  • Perintah Select

Perintah select merupakan perintah yang digunakan untuk memanipulasi data seperti menampilkan atau mengambil data dalam sebuah tabel. Data yang diambil dapat lebih dari satu jenis data bahkan hingga banyak tabel yang menggunakan relasi.

  • Perintah Update

Perintah update merupakan perintah yang dapat digunakan ketika hendak memperbarui data dalam sebuah tabel. 

Sebagai contoh, jika terjadi kesalahan saat mengimpor catatan maka pengguna tidak perlu menghapusnya karena masalah tersebut dapat diperbaiki dengan perintah update.

3. Data Control Language

Data Control Language atau yang dapat disingkat menjadi DCL. DCL merupakan salah satu perintah dalam SQL yang digunakan secara khusus untuk menetapkan izin yang menyangkut pada database atau pada tabel yang sudah ada bagi pengguna.

Melalui DCL maka administrator database dapat menjaga keamanan database terutama mengenai hal-hal yang penting. DCL memiliki dua kategori perintah utama, yakni perintah grant dan revoke.

  • Perintah Grant

Perintah grant dapat digunakan pada saat administrator database hendak memberikan hak akses kepada pengguna lain. Pemberian hak akses memiliki batasan atau aturan. Dalam hal ini, administrator juga dapat memberikan akses ke perintah DML di atas.

  • Perintah Revoke

Perintah revoke merupakan perintah yang digunakan untuk mencabut atau menghapus akses pengguna yang awalnya diberikan oleh administrator database melalui perintah grant sebelumnya.

Kelebihan dan Kekurangan SQL

SQL memiliki beberapa kelebihan dan kekurangan, berikut di antaranya.

Kelebihan SQL

  • Memiliki kriteria tabel yang jelas dan terstruktur.
  • Dilengkapi dengan keamanan data, kemampuan backup data, dan pemulihan data yang baik.
  • Mampu menangani data dalam jumlah besar dan dapat membuat mirroring dan clustering database.
  • Administrator database dapat memberikan akses database kepada pengguna untuk mengelola database.
  • Menyediakan fasilitas jaringan dengan klien dalam pengembangan aplikasinya menggunakan perangkat lunak yang sama dengan platform MS-SQL, seperti Microsoft Visual Basic.

Kekurangan SQL

  • SQL hanya dapat dijalankan dalam satu sistem operasi yakni Microsoft Windows.
  • SQL menjadi salah satu perangkat lunak berlisensi dan dengan harga yang relatif tinggi untuk UKM.
  • SQL hanya dapat dilakukan pada 1 unit server dan jika pengguna ingin menskalakannya, pengguna perlu menyalakan CPU, SSD, RAM, dan perangkat lain di satu server.

Not Only Standard Query Language (NoSQL)

Pengertian NoSQL

NoSQL merupakan singkatan dari Not Only Standard Query Language. NoSQL merupakan database yang dalam setiap tabel tidak memerlukan skema maupun tidak memiliki relasi. Secara keseluruhan bentuk dokumen dari NoSQL adalah JSON yang mudah dipahami dan dibaca.

NoSQL menyediakan mekanisme penyimpanan dan pengambilan data yang tidak terstruktur. NoSQL menjadi database yang dapat menangani sebagian besar database dengan skema yang dinamis.

Maka dari itu, NoSQL menjadi database yang tidak memiliki bahasa kueri yang khusus namun tetap memiliki data yang disimpan dalam suatu format kumpulan dan dokumen.

Software ini memiliki banyak peminat karena kelebihan yang dimiliki, sebagian kelebihannya yakni bersifat non-relasional sehingga dapat menggunakan berbagai model data dan memiliki performa yang tinggi.

Database NoSQL memiliki beberapa contoh diantaranya yakni Couchbase, Cloud DB, Dynamo DB, MarkLogic, dan MongoDB.

Fungsi NoSQL 

Berikut beberapa fungsi dari NoSQL, diantaranya.

  • Menggunakan NoSQL dapat menghindari agregasi data guna mempermudah dalam penskalaan.
  • Penggunaan database NoSQL berfungsi untuk menyimpan data yang terdistribusi dengan penyimpanan yang relatif besar.
  • NoSQL digunakan untuk mengolah data terkait aplikasi dan website modern yang semakin kompleks
  • NoSQL dapat menyimpan data secara konsisten agar dapat dimanfaatkan kembali dan data dapat terlihat baik oleh server maupun client.

Jenis Perintah Dasar NoSQL

Berikut beberapa jenis perintah dasar dari NoSQL.

1. Document Database

Document database digunakan untuk menyimpan data dalam suatu dokumen yang menyerupai dengan objek JSON atau JavaScript Object Notation. Dalam setiap dokumen berisi nilai dan bidang.

Nilai dapat berupa angka, boolean, array, objek, dan string. Saat menuliskan kode terdapat struktur yang sering sejajar dengan objek yang digunakan pengembang.

Jenis perintah database ini sangat sesuai digunakan untuk database umum dan dalam berbagai kasus penggunaan karena memiliki berbagai nilai bidang dan kueri yang kuat.

2. Key-value Database

Key value database merupakan jenis basis data yang memiliki setiap entri berisi pasangan nilai kunci dalam bentuk tabel hash dengan tampilan yang lebih sederhana.

Nilai disini biasanya hanya dapat diambil dengan mengacu pada kunci sehingga mudah bagi pengguna untuk memahami cara mengkueri pasangan nilai kunci tertentu.

Dalam setiap kunci merupakan nilai yang berupa JSON, string, binary large object dan lain-lain. Pengguna tidak perlu melakukan kueri yang sulit dalam mengambil data karena key value database dapat menyimpan data dalam jumlah yang besar. 

3. Graph Database

Graph Database merupakan salah satu jenis database NoSQL yang akan digunakan untuk menyimpan hubungan data antar entitas. Data tersebut disimpan dalam node dan edge. 

Node digunakan untuk menyimpan informasi yang meliputi orang, tempat, dan hal-hal yang terkait dengan entitas lain. Sedangkan edge digunakan untuk menyimpan informasi tentang hubungan antar node. 

Graph database sangat sesuai bagi pengguna memiliki banyak relasi untuk mencari pola tertentu. Misalnya media sosial, alat pendeteksi penipuan, dan rekomendasi lain.

4. Wide-column Based

Wide column based menjadi tempat penyimpanan data dalam tabel, baris, dan kolom dinamis. NoSQL jenis ini sesuai untuk menanyakan SUM, COUNT, dan lain sebagainya. 

Jenis database NoSQL memiliki kelebihan, salah satunya menawarkan fleksibilitas yang besar dibandingkan database relasional karena setiap baris tidak perlu memiliki kolom yang sama.

Kelebihan dan Kekurangan NoSQL

NoSQL memiliki beberapa kelebihan dan kekurangan, berikut di antaranya.

Kelebihan NoSQL

  • Memiliki skalabilitas yang baik dalam setiap kondisi tertentu.
  • Tidak memerlukan administrasi database sehingga biaya pemeliharaan lebih terjangkau.
  • Tidak perlu mendefinisikan bidang dan tipe data dalam tabel seperti di SQL karena memiliki kemampuan non-matematis.
  • Mudah dalam mengelola data skema dan struktur data di NoSQL tanpa harus mengubah konsistensi data di database sebab skema data di NoSQL tidak tetap seperti di SQL.
  • Dalam NoSQL penambahan data lain yang tidak dapat dibedakan dari data sebelumnya dan untuk meningkatkan skala maka pengguna hanya perlu menambahkan server database di cluster untuk penyeimbangan beban.

Kekurangan NoSQL

  • Tidak memiliki hubungan antar catatan transaksi.
  • Dalam setiap record atau baris merupakan data yang unik dan tidak dapat ditimpa oleh data lain
  • Setelah proses transaksi selesai, hasil modifikasi record akan disimpan secara permanen dan aman.
  • Dalam setiap baris data menjadi konsisten sebab setelah dilakukan pengujian dan server dan client akan melihat data yang sama .

The post Apa Perbedaan SQL dan NoSQL? appeared first on HaloEdukasi.com.

]]>
7 Perbedaan MySQL dan MySQLi https://haloedukasi.com/perbedaan-mysql-dan-mysqli Wed, 12 Jan 2022 05:05:57 +0000 https://haloedukasi.com/?p=30637 Bagi para pengembang perangkat lunak, MySQL dan MySQLi bisa jadi adalah hal yang sudah dipahami. Sebab, ini sering digunakan sebagai ekstension penghubung aplikasi dengan server SQL (Structured Query Language). MySQL dan MySQLi sangat penting dalam dunia pemrograman. Tentunya seorang yang ingin menjadi programmer perlu mengetahui pengertian, fungsi, serta perbedaan dari MySQL dan MySQLi ini. Apa […]

The post 7 Perbedaan MySQL dan MySQLi appeared first on HaloEdukasi.com.

]]>
Bagi para pengembang perangkat lunak, MySQL dan MySQLi bisa jadi adalah hal yang sudah dipahami. Sebab, ini sering digunakan sebagai ekstension penghubung aplikasi dengan server SQL (Structured Query Language). MySQL dan MySQLi sangat penting dalam dunia pemrograman. Tentunya seorang yang ingin menjadi programmer perlu mengetahui pengertian, fungsi, serta perbedaan dari MySQL dan MySQLi ini.

Apa Itu MySQL dan MySQLi?

Pengertian MySQL

MySQL adalah suatu manajemen dengan basis data yang difungsikan untuk menggunakan perintah dasar SQL atau Structured Query Language. SQL adalah sebuah bahasa penghubung aplikasi dengan server basis data yang bersifat open-source. Sehingga seorang programmer dapat dengan bebas mengatur data di dalamnya.

Penggunaan MySQL sebaiknya digunakan jika program atau aplikasi yang dibuat memakai tumpukan Linux, Perl/Python, PHP, juga Apache. Namun MySQL juga mendukung banyak bahasa pemrogramanan, misalnya C serta C++.

Pengertian MySQLi

MySQLi ialah singkatan dari MySQL Improved, sebenarnya merupakan versi terbaru sebagai pengembangan dan perbaikan dari MySQL. Sebab, MySQL sudah tidak dikembangkan sehingga tidak update dan tidak bisa digunakan pada sistem baru. MySQL hanya bisa digunakan pada versi 4.1.3 ke bawah.

Oleh karena itu, untuk versi baru atau versi 4.1.3 ke atas dibuatlah MySQLi extension. MySQLi yang merupakan perbaikan dari MySQL memiliki kelebihan diantaranya keamanan dan sistem debugging semakin ditingkatkan. Namun juga, tidak semua fitur pada MySQL terdapat pada MySQLi.

Terdapatnya berbagai perbedaan signifikan antara MySQL dan MySQLi, membuat seorang programmer harus benar-benar mempertimbangkan agar tidak salah pilih untuk menggunakan MySQL atau MySQLi. 

Fungsi MySQL dan MySQLi

Fungsi MySQL

Ketika MySQL telah berjalan dengan benar pada server atau perangkat, maka dapat menjalankan beberapa fungsi yang bisa dijalankan dengan mengetik perintah di command prompt. Fungsi dari MySQL  adalah:

  1. Membuat serta mengelola database pada server yang memuat informasi-informasi menggunakan bahasa SQL
  2. Dalam data science dapat digunakan untuk melakukan query dataset dengan jumlah yang besar sehingga pengguna dapat dengan mudah mengakses dataset dalam bentuk string maupun teks
  3. Bahasa SQL dapat digunakan untuk merubah dataset melalui pemfilteran, agregasi dan penggabungan

Fungsi MySQLi

Fungsi MySQLi di antaranya sebagai berikut:

  1. Dapat merubah koneksi pada database sesuai dengan keinginan dari pengguna
  2. Untuk mengembalikan pengaturan karakter
  3. Dapat melakukan transaksi saat ini dengan bantuan API
  4. Untuk membuat koneksi khusus ke server MySQL
  5. Dapat melakukan operasi debugging
  6. Mengembalikan ID utas untuk koneksi saat ini
  7. Melakukan transfer hasil yang sudah ditetapkan dari query yang terakhir
  8. Membuat koneksi yang aman menggunakan SSL
  9. Menjalankan query SQL
  10. Dan lain sebagainya

Perbedaan MySQL dan MySQLi

Meskipun antara MySQL dan MySQLi secara fungsi serupa, namun terdapat perbedaan antara keduanya. Berikut adalah beberapa perbedaan yang perlu diketahui: 

  1. Perbedaan DBMS
  • Fitur DBMS digunakan oleh MySQL karena sifatnya yang lengkap sebagai sebuah sistem manajemen berbasis data yang relasional. 
  • Sedangkan pada MySQLi tidak menggunakan fitur DBMS ini sebab ekstensi interface sudah disediakan oleh MySQL. Arsitektur pada MySQLi juga dibangun berdasarkan database pada MySQL, ini dikarenakan MySQLi merupakan pengembangan dari MySQl.
  1. Perbedaan Berdasarkan Paradigma Pemrograman
  • MySQL memiliki pendekatan secara khusus jika digunakan untuk menanyakan database. Semua objek pada hasil query dihitung sebagai bagian dari prosedur.
  • Sedangkan untuk MySQLi memiliki pendekatan ganda secara objek maupun prosedural yang dapat dipilih penggunaannya berdasarkan yang dibutuhkan oleh pengguna.
  1. Perbedaan Antarmuka / Interfacenya
  •  MySQL menggunakan interface command line, pengguna dapat membuat perintah dari SQL untuk ditampilkan dalam bentuk tabular.
  • Sedangkan MySQLi menggunakan interface dengan sistem graphical dan programmatic, dengan fitur ini pengguna dapat membuat perintah dengan menekan tombol yang nanti hasilkan akan ditampilkan pada laman yang terpisah.
  1. Perbedaan Berdasarkan Bahasa Pemrograman yang Sering Ditulis
  • MySQl dapat mendukung berbagai bahasa pemrograman sehingga sering digunakan pada banyak bahasa pemrograman seperti C, C++, Perl/Python, PHP, Apache dan lain-lain.
  • Sedangkan untuk MySQLi sering menggunakan bahasa scripting PHP
  1. Perbedaan Tingkat Kerawanan saat Terserang Injeksi SQL
  • Serangan injeksi SQL ini menjadi ketakutan terbesar bari programmer yang menggunakan atau menangani database MySQL. Injeksi SQL ini terjadi saat ada peretas / hacker  yang memasukan permintaan pada bagian input pengguna. MySQL paling rawan terkena injeksi ini.
  • Sedangkan MySQLi telah dirancang untuk menangkal serangan injeksi SQL. Ketika ada query SQL dikirim melalui input pengguna, MySQLi akan langsung mengirimkannya kembali kesalahan tersebut dan tidak akan menjalankan query.
  1. Perbedaan Dukungan Transaksi
  • Perbedaan antara MySQL dan MySQLi juga dapat diketahui dengan melihat dukungan transaksinya. MySQL mesin innoDB telah dilengkapi dengan transaksi ACID. Transaksi ACID ini berfungsi untuk memastikan keakuratan dan kelengkapan data.
  • Sedangkan MySQLi mendapatkan dukungan transaksinya dari API. Transaksi API berfungsi untuk menonaktifkan atau mematikan mode komit secara otomatis.
  1. Perbedaan Dukungan Banyak Pertanyaan
  • Pada MySQL dapat mengirimkan pertanyaan ke server secara sekaligus. Ini dapat menghemat data jika terjadi permintaan secara arus-balik dari klien terhadap server. Sehingga semua pengaturan hasil yang kembali dari server dapat langsung diterima oleh pengguna.
  • MySQLi pun memiliki kemampuan yang sama, namun berbeda pada landasannya. Misalnya jika pengguna membuat permintaan pertanyaan bisa menggunakan database pada MySQL untuk landasannya. Sedangkan pada MySQLi diharuskan membuat data baru supaya berfungsi.

Setelah mengetahui perbedaan-perbedaan antara MySQL dan MySQLi programmer dapat memilih mau menggunakan yang mana. Namun, bagi programmer baru, para profesional lebih menganjurkan untuk menggunakan MySQL terlebih dahulu. Hal ini karena banyak dukungan dari komunitas dunia maupun komunitas nasional. Lama kelamaan akan diketahui dengan sendirinya perbedaan yang begitu signifikan antara MySQL dan MySQli.

The post 7 Perbedaan MySQL dan MySQLi appeared first on HaloEdukasi.com.

]]>