Menjalankan Query Database pada C#
Untuk menjalankan satu perintah DML (Data Manipulation Language) seperti INSERT, UPDATE dan DELETE, kita membutuhkan satu Connection dan satu Command. Untuk MySQL, kita membutuhkan MySqlConnection dan MySqlCommand. Berikut adalah contoh eksekusi / menjalankan query database pada C#:
var conn = new MySqlConnection("Host=localhost;Uid=root;Pwd=123;Database=kampus"); var cmd = new MySqlCommand("", conn); //Parameter Constructor MySqlCommand di atas adalah //CommandText dan Connection. //Perintah di atas dapat diganti dengan: //var cmd = new MySqlCommand(); //cmd.CommandText = ""; //cmd.Connection = conn; var nama = "Fandi"; var gender = "Laki-laki"; var fakultas = "Fisika"; var tanggalDaftar = new DateTime(2001, 08, 08); string query = string.Format("INSERT INTO mahasiswa (id, namalengkap, gender, fakultas, tanggaldaftar, updated) " + "VALUES (NULL, '{0}','{1}','{2}', '{3}', NOW())", new object[] { nama, gender, fakultas, tanggalDaftar.ToString("yyyy-MM-dd") }); //Isi dari string query di atas akan menjadi: //"INSERT INTO mahasiswa (id, namalengkap, gender, fakultas, tanggaldaftar, updated) //VALUES (NULL, 'Fandi', 'Laki-laki', 'Fisika', '2001-08-08', NOW())" cmd.CommandText = query; //Masukkan perintah/query yang akan dijalankan ke dalam CommandText conn.Open(); //Buka koneksi cmd.ExecuteNonQuery(); //Jalankan perintah / query dalam CommandText pada database conn.Close(); //Tutup koneksi
CommandText adalah Properties untuk menyimpan query yang akan dikirim ke MySQL, dan Connection adalah objek koneksi yang akan digunakan Command untuk terhubung ke database. Kode-kode di atas akan menginsert satu baris ke tabel "mahasiswa" di dalam database "kampus" yang ada di database server "localhost". Untuk membuat database yang digunakan pada contoh di atas, jalankan perintah berikut pada database server MySQL anda:
#Buat database CREATE DATABASE IF NOT EXISTS kampus; #Aktifkan database USE kampus; #Buat tabel CREATE TABLE IF NOT EXISTS mahasiswa ( id INT PRIMARY KEY AUTO_INCREMENT, namalengkap VARCHAR(100), gender VARCHAR(10), fakultas VARCHAR(50), tanggaldaftar DATETIME, updated DATETIME ) engine=innodb;