Pemrograman Database MySQL Menggunakan Bahasa C di Linux
Untuk dapat berkoneksi dengan database MySQL kita perlu menginstal libmysqlclient-dev pada komputer. Dan pastikan juga bahwa MySQL server juga berjalan dengan baik. Dan nanti dalam pemrograman kita akan menggunakan librari dari mysqlclient ini. Langsung saja install libmysqlclient.
apin@apin-laptop:~/Latihan$ sudo apt-get install libmysqlclient-devSetelah diinstall maka kita telah siap untuk memulai pemrograman. Pada contoh yang pertama kita ingin menginputkan sebuah record ke sebuah tabel user pada database mail. Dan berikut source code yang dapat digunakan :
#include <stdio.h> #include <stdlib.h> #include <mysql.h> int main () { MYSQL *konek; konek = mysql_init(NULL); //koneksi host user pass database if (!mysql_real_connect(konek, "localhost", "root", "root", "mail", 0, NULL, 0)) { fprintf(stderr, "%s\n", mysql_error(konek)); exit(1); } //eksekusi query if (!mysql_query(konek, "INSERT INTO user VALUES ( NULL , \'user3@desakecil.com\', ENCRYPT( \'user3\' ) , \'user3/\')")) printf("Data berhasil dimasukkan\n"); //menutup database mysql_close(konek); return 0; }
Untuk mengompilenya di terminal gunakan perintah seperti biasa dengan menambahkan -lmysqlclient. Berikut contoh compile seta hasil running nya.
apin@apin-laptop:~/Latihan$ gcc -o hasil mysql.c -lmysqlclient apin@apin-laptop:~/Latihan$ ./hasil Data berhasil dimasukkan apin@apin-laptop:~/Latihan$Dan untuk menampilkan record yang dihasilkan dari query select berikut contoh simpelnya :
#include <stdio.h> #include <stdlib.h> #include <mysql.h> int main () { MYSQL *konek; MYSQL_RES *result; MYSQL_ROW row; konek = mysql_init(NULL); //koneksi host user pass database if (!mysql_real_connect(konek, "localhost", "root", "root", "mail", 0, NULL, 0)) { fprintf(stderr, "%s\n", mysql_error(konek)); exit(1); } //eksekusi query if (!mysql_query(konek, "SELECT * FROM user")) { //menyimpan hasil query result = mysql_store_result(konek); while (row = mysql_fetch_row(result)) { printf("Id : %s\n", row[0]); printf("Email : %s\n", row[1]); printf("Password : %s\n", row[2]); printf("Direktory : %s\n\n", row[3]); } //harus di free kan mysql_free_result(result); } //menutup database mysql_close(konek); return 0; }Dan untuk compile dan running sebagai berikut :
apin@apin-laptop:~/Latihan$ gcc -o hasil mysql.c -lmysqlclient apin@apin-laptop:~/Latihan$ ./hasil Id : 1 Email : user1@desakecil.com Password : B2GDfaKPGT5VY Direktory : user1 Id : 2 Email : user2@desakecil.com Password : zt1AImfVhsGwU Direktory : user2/ Id : 3 Email : user3@desakecil.com Password : c/7GHfdrrgxao Direktory : user3/ apin@apin-laptop:~/Latihan$
0 komentar:
Posting Komentar