Anda di halaman 1dari 97

Membuka koneksi database MySQL PHP

Seperti yang telah disebutkan, sebelum merubah isi tabel dari database, pertama yang harus
kita mulai adalah membuat skrip agar terhubung ke database. Fungsi mysql_connect(),
seperti namanya, digunakan untuk menghubungkan ke database MySQL.

Skrip PHP

1 <?php
2
3 $user_name = "root";
4 $password = "";
5 $database = "nyekripdatabase";
6 $host_name = "localhost";
7
8 mysql_connect($host_name, $user_name, $password);
9
10 echo "Koneksi Terbuka";
11
12 ?>

Perhatikan empat baris skrip pertama yang ditunjukkan di atas, skrip tersebut merupakan
pengaturan variabel. Variabel pertama adalah $user_name sedangkan variabel kedua adalah
$password, variabel pertama berisi nilai root sedangkan variabel kedua bernilai "" alias
kosong, kita menentukan nilai ini karena nilai ini adalah nilai default untuk database MySQL.

Berikutnya adalah variabel $database yang berisi nama database yang ingin dituju dan
variabel $host_name yang berisi nama host tempat database berasal

Skrip PHP

1 mysql_connect($host_name, $user_name, $password);

Baris Skrip PHP di atas digunakan untuk terhubung dengan database dan umumnya berisi
tiga parameter termasuk nama host, username dan password database yang baru saja kita isi
sebelumnya pada variabel.

Menentukan Database yang ingin dibuka

Pada kode yang telah ditunjukkan di atas, kita telah menyatakan variabel $database berisi
nama database yang kita tuju. Mari kita menggunakan variabel tersebut untuk cek apakah
database tersebut tersedia atau tidak.

Skrip PHP

1 <?php
2
3 $user_name = "root";
4 $password = "";
5 $database = "nyekripdatabase";
6 $host_name = "localhost";
7
8 mysql_connect($host_name, $user_name, $password);
9
10 mysql_select_db($database);
11
12 echo "Koneksi Terbuka";
13
14 ?>

Pada skrip diatas terdapat fungsi mysql_select_db(), fungsi ini adalah fungsi built-in PHP
yang digunakan untuk memilih database MySQL yang ingin kita hubungkan. Selanjutnya
fungsi mysql_select_db() mengembalikan nilai true jika database yang kita masukkan
ditemukan dan mengembalikan nilai false jika database tidak ditemukan, jika nilai tersebut
true maka akan menampilkan pesan “Koneksi Terbuka”.

Skrip diatas memiliki kekurangan dalam hal penampilan pesan jika database yang dituju tidak
tersedia, maka dari itu kita membuat dan menggunakan variabel untuk menyimpan nilai
mysql_select_db() dan mysql_connect(). Dengan variabel tersebut kita dapat menguji
dengan if else untuk memeriksa apakah database ditemukan atau tidak.

METHOD, CLASS, DAN OBJEK PADA JAVA

By Andre Purwandono • November 18, 2014 • 4 Comments

Class dan Objek pada Java

Kelas merupakan salah satu konsep fundamental pemrograman berorientasi objek. Kelas dapat
diilustrasikan sebagai suatu cetak biru (blue print) atau prototipe yang digunakn untuk menciptakan
objek.

Definisi Class

Definisi kelas terdiri atas dua komponen, yaitu deklarasi kelas dan body kelas. Deklarasi kelas
adalah baris pertama di suatu kelas, dan minimal mendeklarasikan nama kelas. Sementara itu, body
dideklarasikan setelah nama kelas dan berada diantara kurung kurawal.

//deklarasi kelas

Public class ContohKelas {


//body kelas

Pada Java, nama kelas sekaligus merepresentasikan nama file kode program dan sifatnya
casesensitive.

Objek adalah entitas dasar saat runtime. Pada saat kode program dieksekusi, objek
berinteraksi satu sama lain tanpa harus mengetahui detil data atau kodenya. Interaksi antara objek
ini dilakukan menggunakan suatu message.

Pada pemrograman berbasis objek, objek dijadikan sebagai komponen utama dalam
program, objek menggabungkan data dan fungsi sebagai satu kesatuan. Dalam Pemrograman
berbasis objek terdapat dua istilah yang sangat terkenal yaitu class dan objek. Pengertiannya adalah
sebagai berikut class adalah cetak biru dari sebuah objek, jadi kita dapat membuat banyak objek dari
sebuah class, atau kita dapat analogikan, class itu adalah cetakan puding, sedangkan objek adalah
puding. Contoh sebuah class adalah motor. Class motor memiliki data merk, warna, tahun
pembuatan dan juga memiliki metode seperti menghidupkan mesin, kecepatan dsb.

Jadi jika ada motor Bowo, motor Raga dan motor Loan maka itu adalah sebuah objek dari
class motor. Pada pemrograman java, cara untuk menciptakan sebuah objek dari suatu class adalah
dengan cara sebagai berikut :

<nama class> <nama objek>=new <nama konstruktor>

Misal:

String str = new String();

Random r = new Random();

Pegawai p2 = new Pegawai();

Date hari = new Date();


Hari adalah object reference dari class Date yang akan digunakan untuk mengakses class
Date. Sedangkan operator new adalah operator yang akan menghasilkan hari sebagai reference ke
instance dari class Date ().

Contoh :

Instansiasi Class

Untuk membuat sebuah objek atau sebuah instance pada sebuah class. Kita menggunakan
operator new. Sebagai contoh, jika anda ingin membuat instance dari class string, kita menggunakan
kode berikut :

String str2 = new String(“Hello world!”);

Ini juga sama dengan,

String str2 = "Hello";

Menentukan Class dari sebuah Object

Jika kita ingin mengetahui class dari sebuah obyek dapat dilakukan dengan cara :

1. Method getClass() mengembalikan sebuah obyek Class (dimana Class itu sendiri merupakan
sebuah class) yang memilki sebuah method getName(). Selanjutnya getName() akan mengembalikan
sebuah string yang mewakili nama class.

Sebagai contoh,
String name = key.getClass().getName();

2. Operator InstanceOf

InstanceOf memiliki dua operand: obyek pada sebelah kiri dan nama class pada sebelah
kanan. Pernyataan ini mengembalikan nilai true atau false tergantung pada benar/salah obyek
adalah sebuah instance dari penamaan class atau beberapa subclass milik class tersebut. Sebagai
contoh,

boolean ex1 = "Texas" instanceof String; // true

Object pt = new Point(10, 10);

boolean ex2 = pt instanceof String; // false

Method pada Java

Metode adalah sekumpulan statement program yang disatukan menjadi sebuah subprogram
atau fungsi, diawali dengan tanda “{“ diakhiri dengan tanda “}”. Ada 2 macam metode dan 1 metode
pengendali, yaitu:

 Metode kelas : Metode ini dapat dieksekusi walaupun tidak terdapat objek dalam kelas
tersebut. Seperti variabel kelas, metode kelas juga dideklarasikan menggunkan keyword
static.
 Metode objek : Metode ini hanya dapat dieksekusi sehubungan dengan objek tertentu.
 Metode main() : Metode ini digunakan pada saat aplikasi Java dimulai, menggunakan
keyword static. Sebelum aplikasi mulai dieksekusi, diperlukan metode walaupun tanpa
objek.

Metode adalah suatu blok dari program yang berisi kode dengan nama dan properti
yang dapat digunakan kembali. Metode dapat mempunyai nilai balik atau tidak, penjelasan

beserta contohnya adalah sebagai berikut:

Metode tidak membalikkan nilai

Jika diberi awalan dengan kata void maka metode tersebut tidak memberi nilai balik.
contoh:

Metode membalikkan nilai

Jenis kedua adalah jika metode diberi awalan sebuah tipe data maka metode tersebut akan

memberi nilai balik data yang bertipedata sama dengan metode tersebut.

contoh :

Selain dua jenis diatas metode juga ada yang diberi parameter

contoh :

Karakteristik dari Method antara lain :

Berikut adalah karakteristik dari method :

1. Dapat mengembalikan satu nilai atau tidak sama sekali

2. Dapat diterima beberapa parameter yang dibutuhkan atau tidak ada parameter sama sekali.

3. Setelah method telah selesai dieksekusi, dia akan kembali pada method yang memanggilnya.

Memanggil Instance dan memberikan Variabel dari Method


Sekarang, untuk mengilustrasikan bagaimana memanggil method, mari kita menggunakan
class string sebagai contoh. Anda dapat menggunakan the dokumentasi dari Java API untuk melihat
semua method yang tersedia dalam class string. Selanjutnya, kita akan membuat method, kita
sendiri. Tapi untuk saat ini, mari terlebih dahulu kita gunakan method yang sudah disediakan oleh
Java.

Untuk memanggil sebuah instance method, kita dapat menuliskan :

nameOfObject.nameOfMethod( parameters );

mari kita mengambil dua contoh method yang ditemukan dalam class String.

Contoh program seperti dibawah ini :

String str1 = "Hello";

char x = str2.charAt(0);

String str2 = "hello";

boolean result = str1.equalsIgnoreCase( str1 );

Pemberian Variabel Dalam Method

Pada contoh kita sebelumnya , kita sudah pernah mecoba melewati variabel pada method.
Walaupun kita belumdapat membedakan antara perbedaan tipe variabel yang diberikan (passing) ke
method dalam Java. Ada dua tipe data variabel passing pada method, yang pertama adalah pass-by-
value dan yang kedua adalah pass-by-reference.

Pass-by-Value

Ketika pass-by-values terjadi, method membuat sebuah salinan dari nilai variable yang
dikirimkan ke method. Walaupun demikian, method tidak dapat secara langsung memodifikasi nilai
variabel pengirimnya meskipun parameter salinannya sudah dimodifikasi

nilainya di dalam method.

Contoh :

Pada contoh diatas, kita memanggil method tes dan melewatkan nilai variabel i sebagai
parameter. Nilai pada i disalinkan ke variable j pada method. Pada kondisi ini variabel jadalah
merupakan variabel pengganti pada method tes, jika nilai j berubah maka nilai variabel i yang
terletak pada main tidak akan ikut berubah walaupun awalnya variabel j merupakan salinan dari
variabel i.

Pass-by-reference

Ketika sebuah pass-by-reference terjadi, alamat memori dari nilai pada sebuah variable
dilewatkan pada saat pemanggilan method. Hal ini berarti bahwa method menyalin alamat memori
dari variabel yang dilewatkan pada method. Ini tidak seperti pada pass-by-value, method dapat
memodifikasi variabel asli dengan menggunakan alamat memori tersebut, meskipun berbeda nama
variabel yang digunakan dalam method dengan variabel aslinya, kedua variabel ini menunjukkan
lokasi dari data yang sama.
contoh :

Memanggil Method Static

Method Static adalah method yang dapat dipakai tanpa harus menginisialisasi suatu class
(maksudnya tanpa menggunakan variabel terlebih dahulu). Method static hanya dimiliki oleh class
dan tidak dapat digunakan oleh instance (atau objek) dari suatu class. Method static dibedakan dari
method yang dapat instance di dalam suatu class oleh kata kunci static.

Untuk memanggil method static, ketik :

Classname.staticMethodName(params);

Contoh dari static method yang digunakan :

System.out.println(“Hello world”);

int i = Integer.parseInt(“10”);

String hexEquivalent = Integer.toHexString( 10 );

Konstruktor

Konstruktor adalah suatu metode yang dapat digunakan untuk memberi nilai awal pada saat
objek diciptakan. Konstruktor akan dipanggil secara otomatis begitu objek diciptakan. Konstruktor
memiliki ciri :
a. namanya sama dengan nama kelas

b. Tidak mengembalikan nilai ( dan juga tidak boleh ada kata void didepannya)

Jika constructor tidak didefinisikan, Java memberikan constructor dengan nama


constructor_default. Constructor default tidak melakukan apa-apa, namun semua variabel yang
diinisiallisasi dianggap sebagai berikut:

 Variabel numerik diset ke 0


 String diset ke null
 Variabel boolean di set ke false

Constructor tidak memiliki tipe hasil, walaupun constructor bisa public, private, atau protected.
Sebagian constructor bersifat public.
contoh :

Jika konstruktor dipanggil dari kelas turunan, maka caranya adalah dengan menuliskan kata
super(); pada class turunan. Untuk penurunan sifat akan dibahas pada pertemuan selanjutnya
Konstruktor juga ada yang diberi parameter

contoh :

konstrk(String a){

System.out.println(“INI KONSTRUKTOR”);}

Mengenal dan Fungsi antribut target pada html


Atribut “target” merupakan atribut yang dapat berjalan disemua browser. Atribut
“target” menentukan nama atau keyword yang mengindikasikan dimana respon dari
form akan ditampilkan, misanya tab, window, atau dalam frame
Catatan : target window name diisikan berupa :
Format umu dari penulisan atribut target

<form
target="_blank|_self|_parent|_top|framename">

Berikut adalah listing kode atribut target menggunakan value _blank

<!DOCTYPE html>

<html>

<head>

<title>cek form </title>

</head>

<body>

<form action="demo_form.asp" method="get"


target="_blank">

Nama : <input type="text" name="fname"><br>

Alamat : <input type="text" name="lname"><br>

<input type="submit" value="Submit">


</form

</body>
</html>

Buat objek ADO.NET

Mengubah kelas Form1 sebagai berikut:


Public Class Form1 Inherits System.Windows.Forms.Form
'Create ADO.NET objects.
Private myConn As SqlConnection
Private myCmd As SqlCommand
Private myReader As SqlDataReader
Private results As String

Objek SqlConnection menetapkan sambungan basis data, objek SqlCommand menjalankan


kueri terhadap pangkalan data, dan objek SqlDataReader mengambil hasil permintaan.

Menggunakan objek SqlConnection untuk membuka koneksi Server SQL

1. Untuk menyiapkan koneksi string objek SqlConnection , tambahkan kode berikut


untuk Form1_Load acara prosedur:

'Create a Connection object. myConn = New


SqlConnection("Initial Catalog=Northwind;" & _
"Data Source=localhost;Integrated Security=SSPI;")

2. Untuk menyiapkan objek perintah , yang berisi SQL query, tambahkan kode berikut
untuk Form1_Load acara prosedur:

'Create a Command object. myCmd = myConn.CreateCommand


myCmd.CommandText = "SELECT FirstName, LastName FROM
Employees"

'Open the connection.


myConn.Open()

SqlConnection menggunakan rincian logon Windows Anda untuk menyambung ke


Northwind pangkalan data di komputer Anda.

Menggunakan objek SqlDataReader untuk mengambil Data dari SQL Server

1. Tambahkan kode berikut untuk Form1_Load acara prosedur:

myReader = myCmd.ExecuteReader()
2. Apabila metode myCmd.ExecuteReader dijalankan, SqlCommand mengambil dua
kolom dari tabel karyawan dan membuat objek SqlDataReader .
3. Untuk menampilkan hasil pencarian, tambahkan kode berikut untuk
Prosedur kejadian Form1_Load :

'Concatenate the query result into a string. Do While


myReader.Read()
results = results & myReader.GetString(0) & vbTab & _
myReader.GetString(1) & vbLf
Loop
'Display results.
MsgBox(results)

Metode myReader.Read mengembalikan nilai boolean, yang menunjukkan apakah


ada lebih banyak data untuk dibaca. Hasil kueri SQL ditampilkan di kotak pesan.

4. Untuk menutup SqlDataReader dan objek SqlConnection , tambahkan kode berikut


untuk prosedur kejadian Form1_Load :

'Close the reader and the database connection.


myReader.Close()
myConn.Close()

5. Simpan dan menjalankan projek.

Pengenalan ADO.NET
Standard

ADO.NET merupakan NET library sebagai bagian dari DotNet Framework


yang bertanggung jawab untuk memberikan kemudahan dalam
pengaksesan basis data secara universal yang tidak tergantung
oleh jenis basis data nya.

ADO.NET menyediakan kumpulan class-class yang tergabung dalam


beberapa namespace. Namespace adalah pengelompokkan secara logik
class-class kedalam nama tertentu. Tiap jenis basis data memiliki
namespace yang unik yang terdiri dari class-class spesifik

Misal untuk DBMS MS Access namespace yang digunakan adalah


System.Data.OleDb dan untuk SQL Server adalah
System.Data.SqlClient

Kumpulan class-class dalam namespace tersebut :

MS Access

System.Data.OleDb
OleDBConnection = Membuka Koneksi
OleDbCommand = Mengeksekusi perintah SQL
OleDbDataReader = Membaca record secara forward only
OleDbDataAdapter = Penghubung Ke DataSet

SQL Server

System.Data.SqlClient

SqlConnection = Membuka Koneksi


SqlCommand = Mengeksekusi perintah SQL
SqlDataReader = Membaca record secara forward only
SqlDataAdapter = Penghubung Ke DataSet

Namespace ini harus selalu dipanggil dengan menggunakan keyword using


contoh :

1using System.Data.OleDb;

atau

1using System.Data.SqlClient

Jika namespace tersebut tidak dipanggil maka class-class yang berada


dalam namespace yang bersangkutan tidak bisa digunakan

Menggunakan ADO.NET
—————————————

Ketika kita berhubungan dengan basis data menggunakan ADO.NET


‘ritual’ nya adalah sebagai berikut :

1. Buka Koneksi

Hal pertama yang harus dilakukan untuk membuat aplikasi basis data
adalah membuka koneksi. Koneksi ini selalu diperlukan untuk menjalankan
operasi-operasi manipulasi data seperti INSERT, UPDATE dan DELETE
ataupun meng-query record tertentu dengan perintah SELECT

Class yang bertugas untuk membuka koneksi adalah OleDbConnection


untuk MS Access, dan SqlConnection untuk SQL Server.

OleDbConnection dan SqlConnection membutuhkan property ConnectionString


yang harus diisi. selain lewat property Connection String bisa ditambahkan juga
sebagai parameter constructor class.
Connection String tiap database berbeda-beda. Connection String ini
menunjukan provider DBMS yang digunakan beserta letak direktori dan
nama database nya baik lokal maupun remote database

Contoh source code untuk buka koneksi :

MS Access :

1string connStr="Provider=Microsoft.Jet.OleDb.4.0;Data
Source=c:\NWIND.mdb";
2
OleDbConnection conn=new OleDbConnection(connStr);
3conn.Open();

atau bisa seperti ini :

1string connStr="Provider=Microsoft.Jet.OleDb.4.0;Data
Source=c:\NWIND.mdb";
2
OleDbConnection conn=new OleDbConnection();
3conn.ConnectionString=connStr;

4conn.Open();

SQL Server :

1string connStr="Data Source=DOSEN\SQLEXPRESS;Initial


Catalog=NWIND;Integrated Security=True";
2
SqlConnection conn=new SqlConnection(connStr);
3conn.Open();

Data Source pada ConnStr diisi nama server lokal atau bisa diisi
IP Address jika menggunakan server remote.

2. Eksekusi Perintah SQL

Setelah koneksi terbuka, langkah berikutnya adalah memanggil perintah


SQL yang akan dieksekusi. SQL (Structure Query Language)
adalah bahasa yang digunakan untuk berkomunikasi dengan DBMS.
Tanpa perintah SQL user tidak dapat melakukan apapun terhadap
Database.

Perintah SQL berbeda dengan bahasa pemrograman, SQL sifatnya


deklaratif dan lebih mudah dimengerti secara sintaksis karena
menggunakan bahasa sehari-hari (bahasa inggris).
SQL tidak memiliki control flow dan deklarasi variabel seperti halnya
bahasa pemrograman. Untuk menangani hal tersebut SQL bisa
digabungkan dengan bahasa pemrograman tertentu sehingga
bisa lebih dinamis.

Secara umum perintah SQL terbagi 3, yaitu :

DDL (Data Defenition Language)

Perintah untuk membuat Database baru, dan pemanipulasian objek-objek


terkait yang ada dalam database tersebut. Contoh : CREATE TABLE,
DROP TABLE, ALTER TABLE

DML (Data Manipulation Language)

Berhubungan dengan query dan pemanipulasian table di database.


Contoh : SELECT, INSERT, UPDATE, DELETE

DCL (Data Control Language)

Perintah yang berhubungan dengan manajemen user. Perintah DCL ini


hanya tersedia untuk Database bertipe client-server yang penggunanya
lebih dari 1 user. Contoh : GRANT, REVOKE

Class yang digunakan untuk mengeksekusi perintah SQL adalah


OleDbCommand pada MS Access atau SqlCommand pada SQL Server.
OleDbCommand dan SqlCommand memiliki parameter constructor
perintah sql dan Connection.

Contoh :

Class OleDbCommand memiliki method utama ExecuteNonQuery()


dan ExecuteReader() method ExecuteNonQuery() digunakan
untuk mengeksekusi perintah SQL manipulasi data seperti
INSERT, UPDATE, dan DELETE

method ExecuteReader() digunakan hanya untuk perintah


sql SELECT, return value dari method tersebut adalah objek
OleDbDataReader atau SqlDataReader

INSERT

MS Access :

1string sql="INSERT INTO Customers (Nama,Alamat) VALUES ('XERIS','Sentul


Valley');
2
OleDbCommand cmd=new OleDbCommand(sql,conn);
3cmd.ExecuteNonQuery();
atau :

1string sql="INSERT INTO Customers (Nama,Alamat) VALUES ('XERIS','Sentul


Valley');
2
OleDbCommand cmd=new OleDbCommand();
3
cmd.Connection=conn;
4cmd.CommandText=sql;

6cmd.ExecuteNonQuery();

SQL Server :

1string sql="INSERT INTO Customers (Nama,Alamat) VALUES ('XERIS','Sentul


Valley');
2
SqlCommand cmd=new SqlCommand(sql,conn);
3cmd.ExecuteNonQuery();

atau :

1string sql="INSERT INTO Customers (Nama,Alamat) VALUES ('XERIS','Sentul


Valley');
2
SqlCommand cmd=new SqlCommand();
3
cmd.Connection=conn;
4cmd.CommandText=sql;

6cmd.ExecuteNonQuery();

UPDATE

MS Access :

1string sql="UPDATE Customers SET Nama='XERIS System',Alamat='BOGOR' WHERE


CustomerID=1;
2
OleDbCommand cmd=new OleDbCommand(sql,conn);
3cmd.ExecuteNonQuery();

SQL Server :
1string sql="UPDATE Customers SET Nama='XERIS System',Alamat='BOGOR' WHERE
CustomerID=1;
2
SqlCommand cmd=new SqlCommand(sql,conn);
3cmd.ExecuteNonQuery();

DELETE

MS Access :

1string sql="DELETE Customers WHERE CustomerID=1;

2OleDbCommand cmd=new OleDbCommand(sql,conn);

3cmd.ExecuteNonQuery();

SQL Server :

1string sql="DELETE Customers WHERE CustomerID=1;

2SqlCommand cmd=new SqlCommand(sql,conn);

3cmd.ExecuteNonQuery();

3. Menampilkan Data

Untuk menampilkan data di ADO.NET class yang digunakan adalah


OleDbDataReader dan SqlDataReader DataReader ini sifatnya
forward-only artinya hanya bisa baca maju ke depan, tidak bisa
Move previos atau Move Next seperti pada ADO classic

MS Access

1 string sql="SELECT * FROM Customers;


OleDbCommand cmd=new OleDbCommand(sql,conn);
2
OleDbDataReader rdr=cmd.ExecuteReader();
3

4
while (rdr.Read())
5
{
6
Console.WriteLine(Convert.ToInt32(rdr["CustomerID"]));
7
Console.WriteLine(Convert.ToString(rdr["Nama"]));
8 }
9

10rdr.Close();

11

SQL Server

1
string sql="SELECT * FROM Customers;
2
SqlCommand cmd=new SqlCommand(sql,conn);
3 SqlDataReader rdr=cmd.ExecuteReader();

5 while (rdr.Read())

6 {

7 Console.WriteLine(Convert.ToInt32(rdr["CustomerID"]));

Console.WriteLine(Convert.ToString(rdr["Nama"]));
8
}
9

10
rdr.Close();
11

Pemanggilan method ExecuteReader() menghasilkan semua record tabel


Customers dan disimpan di objek OleDbDataReader/SqlDataReader.
Untuk menampilkan record di object tersebut gunakan statement
looping while. Jika data tersebut ada maka tampilkan di Console
dengan perintah Console.WriteLine. Convert berfungsi untuk mengubah
objek ke tipe yang bersesuaian dengan tipe field di table nya

4. Pencarian Data

Salah satu operasi yang paling banyak dilakukan dibasis data adalah
operasi pencarian/seraching.Untungnya DBMS menyediakan kemampuan
pencarian tersebut di SQL dengan hanya menmbahkan clausa WHERE

Contoh :

Jika Anda ingin mendapatkan data Customer yang alamatnya di Bogor


cukup seperti ini

SELECT * FROM Customers WHERE Alamat=’Bogor’


Pencarian dapat dilakukan lebih luas lagi dengan menggunakan
operator LIKE

SELECT * FROM Customers WHERE Nama LIKE ‘%dewi%’

Jika diketahui datanya sebagai berikut

# Namal
———————-
1 Sandra Dewi
2 Dewi Sandra
3 Dewi Persik
4 Dewi-Dewi
5 Cinta Laura

query SELECT * FROM Customers WHERE Nama LIKE ‘%dewi%’


(% didepan dan dibelakang) akan menghasilkan record no 1,2,3, dan 4

perintah sql tersebut mencari semua data di tabel customer yang


mengandung kata ‘dewi’ baik nama depan, belakang, maupun tengah

query SELECT * FROM Customers WHERE Nama LIKE ‘%dewi'(% didepan)


akan mencari semua data di tabel Customers yang nama belakangnya
mengandung kata ‘dewi’. Record yang dihasilkan adalah no 1 dan 4

query SELECT * FROM Customers WHERE Nama LIKE ‘dewi%’


(% dibelakang) akan mencari semua data di tabel Customers yang
nama depannya mengandung kata ‘dewi’, data yang dihasilkan adalah
no 2,3, dan 4.

Lalu bagaimana dengan ‘Cinta Laura’, bagaimana cara menampilkannya?


(jangan khawatir cin,kamu pasti bisa tampil :-))

untuk menampilkan Cinta Laura bisa 3 cara :

SELECT * FROM Customers WHERE Nama=’Cinta Laura’


SELECT * FROM Customers WHERE Nama LIKE ‘%cinta%’

atau

SELECT * FROM Customers WHERE Nama NOT LIKE ‘%dewi%’

hmmm…cara terakhir sepertinya dipaksakan sekali

Contoh Program :

MS Access
1
string cari="dewi";
2

3
string sql="SELECT * FROM Customers WHERE Nama LIKE '%" + cari + "'%';
4 OleDbCommand cmd=new OleDbCommand(sql,conn);

5 OleDbDataReader rdr=cmd.ExecuteReader();

7 while (rdr.Read())

8 {

9 Console.WriteLine(Convert.ToInt32(rdr["CustomerID"]));

Console.WriteLine(Convert.ToString(rdr["Nama"]));
10
}
11

12
rdr.Close();
13

SQL Server

1 string cari="dewi";

3 string sql="SELECT * FROM Customers WHERE Nama LIKE '%" + cari + "'%';
SqlCommand cmd=new SqlCommand(sql,conn);
4
SqlDataReader rdr=cmd.ExecuteReader();
5

6
while (rdr.Read())
7
{
8
Console.WriteLine(Convert.ToInt32(rdr["CustomerID"]));
9
Console.WriteLine(Convert.ToString(rdr["Nama"]));
10}

11

12rdr.Close();
13

Tiap data provider mempunyai namespace masing2 yg ada di NET Framework antara
lain :

– System.Data.SqlClient : data provider untuk SQL Server


– System.Data.OracleClient : data provider untuk Oracle
– System.Data.Odbc : data provider untuk ODBC
-System.Data.OleDb : data provider untuk OLEDB

1. Data Provider untuk database SQL SERVER

Data Profider SQL Server ada di namespace System.Data.SqlClient. Berikut ini beberapa
class class yg disediakan dlm namespace tsb :
– SqlConnection: class yg digunakan untuk koneksi ke database SQL Server
– SqlCommand : class yg digunakan untuk mengeksekusi SQL query atau store procedures
– SqlDataAdapter: class yg menghubungkan dataset dan database SQL Server
– SqlDataReader : class yg digunakan untuk membaca database secara read only.

2. Data provider untuk database ORACLE

Data provider khusus untuk database Oracle tersedia di namespace


System.Data.OracleClient. Berikut ini beberapa class class yg disediakan dlm namespace
tsb :
– OracleConnection
– OracleCommand
– OracleDataAdafter
– OracledataReader

3. Data provider OLEDB untuk database dg teknoogi yg lama

OLEDB digunakan untuk database lama antara lain : Pradox, Dbase, MsAccess ,Mysql ,DB2
dan sql server versi lama. selain itu OLEDB juga digunakan ketika kita menggunakan 2
database yg berbeda misal kita menggunakan MsAccess dan SQL server dlm satu aplikasi
secara simultan.

Data provider OLEDB harus melalui beberapa layer untuk mengakses database. sehingga
lebih efisien anda menggunakan data provider yg spesifik untuk tiap database. mial untuk
Oracle gunakanlah data provider yg ada di System.Data.OracleClient bgitupun untuk SQL
Server lebih efisien menggunakan dataprovider yg tersedia di System.Data.SqlClient dari
pada anda menggunakan data provider OLEDB (System.Data.OleDb).

Class class yg digunakan oleh data provider OLEDB (class class tsb ada di namespace
System.Data.OleDb) antar lain:

– OleDbConnection, class untuk mengkoneksi database


– OleDbCommand, class untuk menjalankan SQL query
– OleDbDataAdapter, class untuk menghubungkan dataset dg database
– OleDbDataReader, membaca hasil output dari database
=================teori end=========================

Sekarang waktunya kita akan lihat contoh konkrit bagaimana aplikasi C# mengakses
database secara “conected” dgn objek DataReader .

Contoh1 : aplikasi console C# mengkases database sql server dgn data provider SQL
Server (using System.Data.SqlClient ) :

1 using System;
using System.Data.SqlClient; // namespace data provider sql server
2 namespace ContohAksesSqlServer
3 {
4 class ContohSqlServerProvider
5 {
6 static void Main(string[] args)
{
7 // buat string untuk koneksi
8 string stringKoneksi = @ &amp;amp;quot; server = .\sqlexpress;
9 integrated security = true; database = perpustakaan &amp;amp;quot; ;
10
11 // buat query
12 string SQL = @ &amp;amp;quot; select * from data_buku &amp;amp;quot;;
13
14 // deklarasikan objek connection dan data reader
15 SqlConnection koneksi_database = null;
SqlDataReader baca_data = null;
16 try
17 {
18 // 1. buka koneksi ke database
19 koneksi_database = new SqlConnection(stringkoneksi);
koneksi_database.Open();
20
21 // 2. jalankan query
22 SqlCommand cmd = new SqlCommand(SQL, koneksi_database);
23 // tampilkan judul kolom data
24 Console.WriteLine(&amp;amp;quot;Judul buku \t
25 Pengarang\n&amp;amp;quot;);
26
// 3. proses output table
27
28 baca_data = cmd.ExecuteReader();
29 while(baca_data.Read())
30 {
31 Console.WriteLine(&amp;amp;quot;{0} | {1}&amp;amp;quot;,
32 baca_data[0].ToString(baca_data[1].ToString());
}
33 }
34 catch (Exception e)
35 {
Console.WriteLine(&amp;amp;quot;Error: &amp;amp;quot; + e);
36 }
37
38finally
39 {
40 //4. Tutup Koneksi
koneksi_database.Close();
41 }
42}
43}
44
45
46
47
48

Untuk menghubungkan aplikasi C# dng database sql server selain dengan data provider
khusu untuk sql server spt diatas ( using System.Data.SqlClient) juga bisa dengan OLEDB
ataupun dgn ODBC adapun dimana letak perbedaan utamanya bisa dilihat di table berikut
ini:

Contoh2 : Koneksi Aplikasi C# dg database MsAccess menggunakan data provider


OLEDB (using System.Data.OleDb;)

roubleshooting Server DNS

TROUBLESHOOTING SERVER DNS

DNS server merupakan salah satu komponen penting saat ini dalam sistem internet.
Keberadaannya sangat membantu dalam mengakses berbagai layanan di internet, mulai dari
situs berita, publikasi karya ilmiah, jejaring sosial dan masih banyak lagi manfaat lainnya.
Kesemua layanan tersebut dapat diakses dengan mudah karena memiliki nama yang yang
dapat diingat oleh user. Server DNS memegang peranan penting untuk menjaga kaitan antara
nama dengan komputer server tujuan aplikasi internet. Apabila ada permasalahan dalam
server DNS akan menyebabkan akses ke suatu sumber daya di internet akan terganggu.

Saat ini banyak server internet yang dibangun menggunakan UNIX/Linux sebagai basisnya
sedangkan BIND merupakan aplikasi server DNS yang saat ini paling banyak digunakan
pada sistem UNIX/Linux. Berikut ini merupakan kegiatan yang dapat dilakukan untuk
memperbaiki dan memastikan kondisi server DNS selalu dalam keadaan optimal.
,,,,,,,,,,,,,,,,,PASTIKAN PORT DNS DALAM KEADAAN TERBUKA
Secara default aplikasi BIND mendengarkan request dari klien pada port 53. Sehingga
pastikan port tersebut dalam keadaan terbuka dan layanan DNS-nya dalam keadaan aktif. Cek
status port 53 menggunakan aplikasi telnet dengan format perintah berikut.
Sistem Operasi Jaringan

telnet alamat-server-dns 53 atau telnet alamat-server-dns domain


Contoh: telnet 192.168.55.68 domain
Apabila berhasil akan menampilkan tulisan seperti berikut.
Trying 192.168.55.68... Connected to ns1.kdebian.org. Escape character is '^]'.
Cara lain untuk mengetahui apakah port 53 sedang aktif dapat dengan perintah netstat
berikut.
netstat -tulpn |
atau
netstat -atve

Agar lebih yakin bahwa port DNS dapat digunakan, pastikan firewall di server membuka
akses ke port 53. Gunakan perintah berikut ini menampilkan daftar aturan firewall iptables.
iptables –L –n

Pastikan juga bahwa layanan server DNS dalam keadaan aktif dengan menggunakan perintah
status berikut ini.
/etc/init.d/bind9 status

Apabila belum diaktifkan, aktifkan dengan menggunakan perintah berikut.

/etc/init.d/bind9 start atau /etc/init.d/bind9 restart

Sistem Operasi Jaringan

CEK LOG DNS

Hampir semua layanan yang ada pada sistem UNIX/Linux memiliki file log yang berisikan
catatan kegiatan-kegiatan yang telah dilakukan oleh layanan tersebut. Demikian juga dengan
server DNS, apabila terdapat permasalahn dalam layanan ini pesannya akan disimpan dalam
file log tersendiri. Gunakan perintah berikut untuk membaca file log server DNS segera
setelah server diaktifkan.

tail -f /var/log/syslog.Validasi konfigurasi DNS

Kegiatan terakhir yang dapat dilakukan terkait dengan perbaikan server DNS ini adalah
dengan melakukan validasi kesesuaian konfigurasi DNS dengan standar yang digunakan
BIND. Berikut ini adalah perintahnya.

named-checkconf /etc/bind/named.conf

Hasilnya, apabila mengalami kesalahan akan menampilkan tulisan seperti berikut.


/etc/bind/named.conf:11: missing ';' before 'include'

Sebagai catatan, apabila tidak ada kesalahan dalam konfigurasi BIND, tidak ada keluaran
yang diberikan oleh perintah diatas.

UJI FUNGSIONALITAS SERVER DNS

Terdapat sejumlah aplikasi yang dapat digunakan untuk menguji fungsionalitas server DNS,
diantaranya adalah:
host
Format perintahnya: host nama-domain host alamat-ipPERBAIKAN PADA SISI KLIEN
Selain pada sisi server permasalahan DNS juga dapat terjadi pada komputer klien sebagai
pengguna dari layanan DNS ini. Perintah berikut ini dapat digunakan untuk mengatur ulang
(reset) konfigurasi DNS yang diterima dari server.

Langkah untuk melihat port yang terbuka di Linux

1. Pastikan perintah netstat sudah terinstall di server atau komputer anda. Untuk mengecek
apakah sudah teristall atau belum, gunakan perintah berikut ini:
man netstat
Perintah ini akan menghasilkan output halaman cara menggunakan netstat contohnya
seperti ini:

Contoh output perintah man netstat


2. Jika belum terinstall silahkan install dulu netstat-nya dengan menggunakan perintah:
sudo apt-get install netstat (untuk Ubuntu)
yum install netstat (untuk Centos, RedHat, Suse)
3. Jika sudah terinstall langsung saja ketik perintah dibawah ini:
netstat -tulpn | less
Maka akan muncul list IP yang sedang terkoneksi beserta port nya. Contohnya sebagai
berikut:

Contoh port yang sedang terbuka

4.
Jika anda lihat gambar di atas, kolom pertama adalah nama protokolnya (contoh: tcp, tcp6,
udp), kemudian ada juga IP local (Local Address), IP luar (foreign address jika ada), statusnya,
kemudian kolom terakhir adalah PID (process ID) atau bisa juga aplikasi yang melakukan /
membuka port tersebut. Dalam contoh di atas aplikasinya adalah (postgresql, aplikasi Java
dan lain-lain). Port yang terbuka bisa dilihat di bagian kolom Local Address.

Mengetahui port yang terbuka itu sangat penting, agar kita memastikan bahwa tidak ada celah yang
bisa dimanfaatkan orang lain untuk mengakses server / komputer kita secara sembarangan. Selain
itu, dengan mengetahui port yang terbuka maka kita bisa tahu program apa saja yang jalan dan
menggunakan port tersebut. Misalkan anda menggunakan PostgreSQL dan ingin melihat statusnya,
anda bisa lihat dengan perintah di atas.

Mematikan program yang menjalan/membuka port


Jika anda ingin mematikan/stop/kill program yang menggunakan port tersebut, anda cukup
melakukannya dengan perintah kill diikuti dengan proses ID program tersebut. Contohnya, di atas
ada program java yang menjalankan port 8080 dengan process ID 26307, maka untuk mematikannya
tinggal ketik perintah: kill 26307 maka program tersebut akan berhenti/mati.

telnet adalah salah satu fasilitas yang sering digunkan untuk meromote computer dalam suatu
jaringan melalaui underdos (CMD),
Tapi terkadang perintah telnet sering kali gagal terkoneksi Koq bisa ya?,

Tentu aja bisa dong , alasannya apakah konfigurasi telnetnya sudah diaktifkan atau belum ,
kalau belum wajar aja perintah telnat engggak bisa di gunakan .

Sebenernya perintah telnet hamper mirip dengan perintah Remote desktop , cuma kalau
telnet lebih seru alias enggak ketahuan sewaktu kita melakukan pengambil alihan ke suatu
computer ,kalau telnet udah bisa dilakukan maka secara otomatis kita biasa mengendalikan
computer tersebut sesuai dengan keinginan kita , Misalnya :

Mematikan kompter yang tidak kita kehendaki, atau sekedar iseng maling data yang fungsi
telnetnya udah aktif .

Dari pada pusing pusing medingan kita praktek yuk……………..

Langkah awal coba kita cek konfigurasi telnet di computer kita , caranya :

Tekan tobol windows +R ( klik Run – ktikan CMD terus klik OK) sampai muncul tampilan
Dos :

Untuk mengecek apakah fungsi telnet udah bisa dilakukan atau belum sebaiknya kita chek
dulu computer apa aja yang lagi jalan , sekarang ketikin perintah :

Pada tampilan diatas saya coba dengan beberapa perintah


–net view , mengecek jaringan (host) mana aja yang lagi aktif .disitu ada beberapa host
sedang terkoneksi dengan computer saya yaitu PC-03, SERVER sedangkan saya sendiri
menggunkan computer SERVER-2003

Kemudian saya coba ping ke PC -03 , ternyata dihasilkan IP 192.168.16.8 ,

Salnjutnya kita bias mencoba mengechek port mana saja yang bisa kita susupi ke computer
tersebut misalnya saya mau chek computer SERVER yang lain

Perhatikan pada Bagian Foreign Address! Disitu kita dapatkan sebuah Port yang terbuka
dengan port 139, kalau sudah seperti itu coba anda lakukan telnet (spasi) IP
tujuan(spasi)noPort:

telnet 192.168.16.66 139

Headline

7 Cara Menghilangkan Virus di Laptop Tanpa Instal Ulang

09:14:05 am

Monday 19th, March 2018 /

12 October,2015

 Home
 Ilmu Komputer
 Software
 Hardware
 Jaringan Komputer
 Kuliah IT
Home » Jaringan Komputer » Teknologi Jaringan » Fungsi Telnet Pada Jaringan Komputer

Fungsi Telnet Pada Jaringan Komputer

Telnet merupakan kependekan dari Telecommunication Network, yang merupakan salah satu
bentuk dari protocol pada jaringan komputer. Telnet banyak digunakan sebagai salah satu
protocol jaringan komputer yang melayani pengimplementasian dari client to server
connection network. Yang berarti membutuhkan paling tidak dua perangkat keras jaringan
komputer, yaitu user dan juga komputer server.

ads

Telnet atau telecommunication network ini juga seringkali disamakan degnan virtualisasi
ataupun emulasi dari sebuah terminal yang dapat mengakses komputer secara remote,
atau jarak jauh.

Bagaimana Telnet Bekerja?

Dalam aplikasinya, sebuah protocol telnet akan bekerja dengan cara membuat login user di
dalam komputer lain, agar dapat mengakses sebuah informasi di dalam jaringan internet.
Secara singkat, telnet mirip seperti dua orang yang memilki kunci rumah yang sama, dimana
satu orang bisa membuka kunci rumah tersebut dari jarak jauh.

Pada intinya adalah dengan menggunakan protocol telnet, seorang user dapat melakukan
login dan juga masuk ke dalam jaringan melalui komputer lain secara remote, atau jarak jauh.
Dalam beekerja, protocol telnet menggunakan implemntasi dari dua buah program, masing-
masing program merupakan program milik server dan juga milik komputer user atau client.

Cara kerjanya adalah sebagai berikut:

 Software pada komputer client atau komputer user meminta pelayanan atau request dari
sebuah komputer server
 Dengan menggunakan protocol telnet, maka komputer server akan menanggapi dan
memproses request layanan yang diminta oleh komputer user atau client
 Dengan adanya protocol Telnet ini, maka setiap orang bisa melakukan akses terhadap
sebuah komputer server secara remote dan juga jarak jauh.

Dalam penggunaannya, komputer user atau client ketika melakukan proses request melalui
protocol telnet, memiliki fungsi sebagai berikut:

 Melakukan koneksi ke dalam jaringan, dengan menggunakan protocol TCP kepada server
 Melakukan formatting pada inputan user (sekarang komputer client sudah menjadi terminal)
dan mengirimkannya ke komputer server
 Menerima output yang diberikan oleh server, sebagai hasil respon dari request yang
dilakukan oleh client
 Melakukan formatting pada output yang diterima, dan menampilkannya ke dalam layar
 Melakukan check dan juga recheck, lalu mengkonfirmasi bahwa komputer sudah bisa
menerima koneksi kepada software jaringan komputer
Fungsi dari Telnet

Karena perkembangan jaringan komputer yang dari waktu ke waktu semakin lebih baik
maka, mengendalikan fungsi telnetpun dapat dilakukan tak harus dimana letak telnet
berada. Protokol Telnet sendiri memilki beberapa fungsi utama yang banyak digunakan.
Berikut ini adalah beberapa fungsi utama dari protocol Telnet:

1. Mengakses server atau host secara remote

Dengan meggunakan telnet sebagai protocol, maka seorang user akan mampu untuk
melakukan pengaksesan data dan juga informasi dari server secara remote atau dari jarak
jauh. Misalnya, ketika sebuah server berada di lokasi yang berbeda ruangan, dan komputer
user dan juga server sama-sama terkoneksi, maka user dapat menggunakan protocol telnet ini
untuk mengakses server.

2. Mengubah komputer user menjadi komputer terminal

Komputer user juga dapat beralih fungsi menjadi komputer terminal. Jadi, dengan
menggunakan protocol telnet, sebuah komputer user biasa, dapat menjadi terminal dan juga
workstation, yang bisa mendukung koneksi ke beberapa komputer user lainnya.

3. Menjalankan komputer menggunakan telnet jarak jauh

Komputer user juga dapat menjalankan program apa saja yang terdapat di Dalam komputer
server dengan cara login jarak jauh. Misalnya, seseorang ingin mengganti dan mengubah
database di dalam server, maka dengan menggunakan protocol telnet manajamen pada
database server bisa dilakukan, tanpa harus mengutak atik komputer server.

Dengan fungsi-fungsi utama telnet tersebut, maka sudah pasti protocol telnet akan membuat
manjamen data dan juga pengaksesan informasi menjadi jauh lebih baik dan juga jauh lebih
efisien.

Cara Menggunakan Telnet

Untuk menggunakan Telnet, ada beberapa cara yang bisa kita lakukan. Berikut ini adalah
beberapa cara yang bisa kita lakukan untuk menggunakan protocol telnet pada jaringan
komputer yang kita gunakan :

1. Menggunakan Putty

Putty merupakan software yang mendukung pembuatan koneksi jaringan dengan


menggunakan protocol Telnet. Karena merupakan software tambahan, maka tentu saja anda
dapat melakuakn download dari software ini terlebih dahulu.

Setelah software Putty terinstall, maka anda bisa langsung menjalankan program tersebut,
dan kemudian dapat melakukan koneksi jaringan secara remote dengan menggunakan
protocol Telnet. Berikut ini adalah langkah-langkah dan penjelasan singkat dengan
menggunakan Software Putty untuk melakukan koneksi menggunakan protocol Telnet:
 Jalankan software Putty yang sudah terinstall di dalam komputer anda
 Setelah software berjalan, anda tinggal memasukkan alamat dari server host yang ingin anda
tuju dan akan anda lakukan proses remote hosting
 Gunakan pilihan protocol Telnet, dan gunakan default Port 32
 Setelah itu, anda tinggal mengklik “Open”
 Setelah itu, biasanya akan langsung muncul window baru dengan menu yang bersikan menu
Login
 Anda tinggal melakukan login dari software Putty ini, dan proses selesai, kini anda bisa
melakukan remote terhadap host yang akan anda tuju.

Penggunaan software ini tentu saja sangat praktis dan juga sangat membantu anda yang ingin
menggunakan protocol telnet untuk melakukan akses remote terhadap host ataupun server.

2. Menggunakan Command Pada Windows

Bagi anda yang menggunakan sistem operasi Windows, maka untuk melakukan konfigurasi
dari koneksi menggunakan protocol Telnet ini dapat dilakukan dengan Command bawaan
yang ada di sistem operasi berlogo jendela tersebut. Berikut ini adalah langkah – langkah
untuk melakukan koneksi menggunakan protocol Telnet pada sistem operasi Windows
dengan menggunakan Command Prompt :

 Buka Command Prompt pada windows anda, dengan cara pilih start, lalu cari Command
Prompt. Atau bisa juga dengan menggunakan Start – RUN – ketik cmd, kemudian enter
 Jendela Command Prompt kemudian akan terbuka.
 Pada saat command prompt suah bisa digunakan, anda tinggal mengetikkan :\telnet (alamat
host yang akan menjadi tujuan anda) lalu kemudian tekan tombol Enter.
 Setelah itu, akan muncul notice, Welcome to Microsoft Telnet Client
 Ketika muncul Command “You are about to send your password information to a remote
computer in internet zone. This might not be safe. Do you want to send anyway? (y/n) pilih
saja n, yang artinya NO.
 Setelah proses tersebut selesai, maka akan muncul menu tampilan login. Masukkan account
anda, lalu enter
 Maka anda sudah bisa melakukan remote pada server dengan menggunakan omputer anda.
 Perintah netstat digunakan untuk mengetahui koneksi apa saja yang keluar masuk
dalam sebuah jaringan. Netstat mengambil informasi networking ini dengan cara
membaca tabel routing dari kernel yang terdapat dalam memori.
Dalam RFC pada Internet Tool Catalog, defenisi netstat adalah sebuah aplikasi yang
memiliki kemampuan untuk mengakses jaringan yang berkaitan dengan struktur data
dalam kernel, serta menampilkannya dalam bentuk format ASCII di terminal. Netstat
dapat memberikan laporan dari tabel routing, koneksi listen dari TCP, UDP, dan
protokol manajemen memori.
 Fungsi-fungsi dari netstat diantaranya :
a.Untuk menampilkan routing table
b.Untuk menampilkan statistik interface
c.Untuk menampilkan informasi tambahan interface
d.Untuk menamplikan soket network
e.Untuk menampilkan semua soket yang open
f.Untuk menampilkan kesimpulan statistik dari tiap protokol
1. GREP
Adalah salah satu perintah dasar di Linux yang berfungsi untuk mencari suatu tulisan atau
karakter di dalam suatu file. Maka dari itu fungsi dari grep berbeda dengan fungsi tail.

SYNTAX :

grep [karakter yang dicari] [nama file]

Contoh : grep jkl haha.txt

C:\windows>netstat -a
Misalnya kita mengambil satu baris dari tampilan diatas dan melihat apa yang terdapat
didalamnya:
Proto Local Address Foreign Address State
TCP 192.168.0.25 :1051 ESTABLISHE
Address State
TCP localhost :netbios ESTABLISHE dan seterusnya …
Dari hal diatas dapat kita ketahui :
Protocol: Transmission Control Protocol atau TCP, UDP User Datagram Protocol atau
bahkan, IP Internet Protocol.
Local System Name: SERVER Ini adalah nama dari sistem properties yang anda tentukan
pada waktu setup Windows.
Local Port yang sedang terbuka dan digunakan oleh koneksi adalah: 1051

-- port berarti TCP/IP port number to use for connection


dapat disimpulkan --port digunakan untuk memeriksa port mana yang digunakan untuk melakukan
koneksi ke MySQL

SUB QUERY & INDEKS


19 November 2014fikrileroux

LANDASAN TEORI
A. SELECT INTO STATEMENT

SELECT INTO adalah sebuah perintah yang ada pada MySQL yang digunakan untuk
memindahkan data dari satu tabel ke tabel yang lain atau dari satu database ke database yang
lain. SELECT INTO sebenarnya juga dapat memilah field yang mana sajakah yang ingin kita
pindahkan dengan cara menyebutkan nama fieldnya. Struktur SQL yang digunakan
adalah select * into tabelBaru from tabelLama; dan bila hanya digunakan untuk memindah
kolom-kolom tertentu saja maka Syntax yang digunakan adalah select namaKolom1,
namaKolom2, namaKolom3 into tabelBaru from tabelLama; Berikut adalah beberapa
contoh penggunaan SELECT INTO:

 Membuat backup sebuah tabel

SELECT * INTO backup_transaksi FROM transaksi;

 Membuat backup sebuah tabel ke dalam database yang baru

SELECT * INTO backup_trsndskdi IN ‘backup_database.mdb’ FROM transaksi;

 Membuat backup beberapa kolom sebuah tabel

SELECT ID,NamaPelanggan INTO backup_transaksi FROM transaksi;

B. SUB QUERY

Sub Query adalah query nested atau sebuah query yang ada di dalam query. Sub query
merupakan pernyataan SELECT yang merupakan bagian dari pernyataan INSERT,
SELECT.. Query dasar dalam sub query :

SELECT namakolom FROM namatabel WHERE namakolom operator (subquery);

Beberapa kegunaan dari Sub Query adalah :

1. Subquery digunakan untuk menyelesaikan persoalan dimana terdapat suatu nilai yang tidak
diketahui (unknown values).
2. Meng-copy data dari satu tabel ke tabel lain
3. Menerima data dari inline view
4. Mengambil data dari tabel lain untuk kemudian di update ke tabel yang dituju
5. Menghapus baris dari satu tabel berdasarkan baris dari tabel lain

Perintah ini hanya bisa menerima satu buah hasil dari sub query, jika hasil dari sub query ada
lebih adari satu maka akan terjadi error. Ada beberapa bahasan terkait penggunaah Sub Query
ini antara lain :

1. Sub query dengan IN

Jika operator ‘=’ hanya digunakan untuk hasil yang tepat satu, maka jika ingin menampilkan
yang memiliki hasil lebih dari satu maka menggunakan perintah IN. Dan struktur Query yang
digunakan dalam hal ini adalah
SELECT namakolom FROM namatabel WHERE kondisi opeatorperbandingan
IN (subquery);

2. Sub query dengan ALL

Command ALL diikuti dengan operator perbandingan digunakan memiliki arti menampilkan
nilai jika perbandingan bernilai benar untuk semua data. Operator perbandingan tersebut
berupa ( <, >, =, != ). Berikut adalah query dasar dari sub query all
SELECT namakolom FROM namatabel WHERE kondisi opeatorperbandingan ALL
(subquery);

3. Sub query dengan ANY

Command ANY diikuti dengan operator perbandingan memiliki arti menampilkan nilai yang
sesuai dengan apapun yang dihasilkan oleh sub query. ANY berbeda dengan IN, jika IN itu
semua data, sedangkan ANY hanya beberapa data. Contoh query dasar dari sub query ANY
SELECT namakolom FROM namatabel WHERE kondisi opeatorperbandingan
ANY (subquery);

4. Sub query dengan EXISTS

Perintah EXISTS disini berguna untuk mengartur penampilan hasil query, Query Utama akan
dijalankan jika Sub Query bernilai TRUE (ada hasilnya) jika hasilnya kosong maka Query
utama tidak akan dijalankan. Lawan dari statement EXISTS adalah NOT EXISTS. Query
yang digunakan adalah
SELECT namakolom FROM namatabel WHERE EXIST / NOT EXIST (subquery);

5. Insert Into Statement

Untuk meng-copy data dari suatu tabel ke tabel lain kita bisa menggunakan perintah INSERT
INTO. Tetapi sebelu kita menggunakan perintah INTO INTO ini kita harus membuat tabel
baru yang jumlah field dan urutannya sama dengan tabel field sebelumnya, nama dari field
tidak harus sama. Query untuk perintah INSERT INTO adalah sebagai berikut :
INSERT INTO namatabel2 SELECT namakolom FROM namatabel1 ;

Kita juga bisa memberikan kondisi sesuai dengan kondisi yang kita inginkan dengan
penambahan perintah WHERE.

C. INDEX

Indexes adalah suatu bagian yang special dari system database yang digunakan untuk
peningkatan kemampuan menyeluruh dari proses yang ada.MySQL mengijinkan antara 16
sampai 64 indexes untuk setiap table, akan tetapi ini tergantung storage engine yang
digunakan.

Setiap index dapat diletakan di field (kolom) mana saja, mulai dari field 1 sampai field 15.
Walaupun penggunaan beberapa field (multicolumn) index tidak terlihat nyata, akan tetapi
penggunaan ini akan memberikan kemudahan untuk kemampuan pencarian pada sebuah atau
banyak field (column).

Pada lain hal, ada sebuah hal yang menjadikan kelemahan dari penggunaan index. Dimana
dengan index kita dapat meningkatkan kecepatan dalam membaca data dari database, tetapi
akan membuat lambat proses perubahan data dalam database, karena perubahan akan
berpengaruh pada data yang di index. Anda akan mendapat hasil yang normal ketika hanya
menampilkan data dari database jika dibandingkan anda melakukan proses tambah (insert)
data atau ubah (update) data yang sudah ada.

Pengguna index, baik digunakan pada field (column) :

1. Ketika sering menggunakan WHERE pada bagian query.


2. Ketika sering menggunakan ORDER BY pada bagian query.
3. Ketika memiliki banyak perbedaan nilai.
4. Ketika sering menggunakan JOIN pada bagian query.

MySQL memiliki beberapa tipe dari Index yang berbeda, yaitu :

1. INDEX
2. UNIQUE
3. PRIMARY KEY.
4. FULLTEXT index

Contoh Penggunaan Macam Index

1. Indentifikasi suatu field menggunakan PRIMARY KEY


2. Indentifikasi suatu field harus UNIQUE

UNIQUE tidak dapat digunakan dalam jumlah banyak. Sebagian besar digunakan seperti
nilai tanggal, angka, nama, kota, kode pos yang berulang, terutama sekali pada table dengan
ribuan baris (record). Tetapi semua tergantung pada aplikasi yang anda buat, apakah anda
hanya menggunakan sekali-kali pada field yang benar-benar harus unik, seperti alamat email,
username dari sistem aplikasi registrasi (sistem login). Anda tidak dapat mendefinisikan
sekaligus PRIMARY KEY dan UNIQUE dalam sebuah field, karena PRIMARY KEY sudah
didesain harus mengikut aturan unik.

3. Identifikasi suatu field akan mendapatkan keuntungan dari sebuah INDEX

Pada rekomendasi ada adalah ketika index akan membantu dan berfikir tentang apa informasi
akan disajikan. Jika anda memerlukan untuk melihat daftar dari invoices berdasarkan tanggal
atau total jumlah order, maka INDEX akan membuat logical indexes. Jika sebuah table
registrasi/login akan menggunakan kombinasi pada username dan password untuk verifikasi
suatu proses login, maka akan dibuat index. Anda juga membuat index pada field foreign key
anda.

Berikut adalah struktur SQL untuk membuat indeks pada suatu kolom
CREATE INDEX namaindex ON namatabel (nama kolom);
Sedangkan Unique index mirip dengan penggunaan indeks tetapi lebih digunakan untuk
mencegah duplikasi data yang terdapat dalam tabel. Jadi dengan adanya unique index berarti
pembaca tidak dapat meng-insert data yang sama dalam sebuah tabel. Berikut struktur SQL
nya :
CREATE UNIQUE INDEX namaindex ON namatabel (nama kolom);

Untuk menghapus index berikut strukturnya :


DROP INDEX namaindex;

D. KOLOM UNIK

Unique berfungsi untuk menjaga agar tidak terjadinya duplikasi nilai (kesamaan data) dalam
sebuah kolom, hal ini dapat ditangani dengan membuat sebuah indeks unik atau fungsi unik
sendiri pada kolom yang dimaksud. Unique biasanya digunakan dalam pembuatan bukan
primary key namun butuh untuk mengecek dupikasi agar tidak ada yang sama, karena dalam
primary key sudah otomatis mempunyai sifat unik. Berikut Struktur SQL saat pembuatan
tabel baru :
CREATE TABLE namatabel (namakolom tipedata unique);

Ketika tabel sudah ada kita bisa menggunakan ALTER TABLE. Hal ini sesuai dengan yang
telah dipelajari pada bab sebelumnya. Berikut Struktur SQL
ALTER TABLE nama_tabel ADD UNIQUE (nama_kolom);
Untuk menghapus unique berikut caranya :
ALTER TABLE nama_table DROP CONSTRAINT NAMA_CONSTRAIN;

E. CHECK

Check berfungsi untuk melakukan pembatasan nilai masukan dalam sebuah kolom, sebagai
contoh misalkan kita ingin agar kolom nomor telepon yang biasanya terdiri dari 12 karakter
ini dapat kita setting dengan menggunakan CHECK. Dengan menggunakan CHECK maka
sebuah kolom hanya bisa diisi dengan data yang memenuhi kriteria dalam CHECK. Berikut
query contoh pengunaan check
db_contoh=> CREATE TABLE pelanggan (
db_contoh(> nama varchar(35),
db_contoh(> kode_area CHAR(10) CHECK (length(trim(kode_area)) = 2),
db_contoh(> umur INTEGER CHECK (umur >= 0),
db_contoh(> gender CHAR(1) CHECK (gender IN (‘L’, ‘P’)),
db_contoh(> ttl DATE CHECK (ttl BETWEEN ‘1998-01-01’ AND CURRENT_DATE),
db_contoh(> CHECK (upper(trim(nama)) != ‘nita’ OR
db_contoh(> upper(trim(nama)) != ‘jeki’)
db_contoh(> );
CREATE

F. PENGGUNAAN TRIM

Menghilangkan beberapa karakter di MySQL terkadang sangat kita perlukan. Terutama


dalam mengupdate data dalam bentuk karakter/teks yang bertipe varchar, text dan
sebangsanya. Contoh simplenya misalnya menghilangkan tanda tertentu seperti
menghilangkan tanda koma di belakang kata “Rabu” pada ” Senin,Selasa,Rabu,”. Jika ada
masalah seperti ini, kita dapat membersihkannya dengan menggunakan fungsi TRIM. Fungsi
TRIM dibagi menjadi 3, yaitu TRIM, LTRIM dan RTRIM. Ketiga fungsi ini memiliki
bentuk penggunaan sebagai berikut :

 RTRIM : digunakan untuk membersihkan spasi kosong yang ada di bagian kanan (Right)
String.
 LTRIM : digunakan untuk membersihkan spasi kosong yang ada di bagian kiri (Left) String.
 TRIM : digunakan untuk membersihkan spasi kosong yang ada di bagian kiri, kanan, maupun
tengah String

Berikut Struktur SQL penggunaan trim :


Select trim(nama_kolom) from nama_tabel;

Ketika kita menggunakan fungsi TRIM kita memiliki tiga opsi yang bisa digunakan untuk
menghilangkan atau menghapus suatu karakter string. Jadi fungsi TRIM tidak hanya bisa
menghapus spasi saja tetapi kita bisa gunakan untuk menghapus karakter string suatu data.
Opsinya sebagai berikut :

 LEADING : merupakan opsi untuk menghilangkan karakter terpilih yang ada di sebelah kiri.
Parameter Leading diartikan sebagai sufik dari karakter yang ada.
 TRAILING : merupakan opsi untuk menghilangkan karakter terpilih yang ada di sebelah
kanan String. Parameter Trailing diartikan sebagai sufik dari karakter yang ada.
 BOTH : merupakan opsi yang dapat menangani parameter Leading maupun Trailing

Berikut Struktur SQL nya :


Select trim(LEADING ‘karakter, misal : -’ from namakolom) from nama_tabel;
Select trim(TRAILING ‘karakter, misal : -’ from namakolom) from nama_tabel;
Select trim(BOTH ‘karakter, misal : -’ from namakolom) from nama_tabel;

HASIL PRAKTIKUM

1. Menampilkan nama fakultas dan jumlah mahasiswa dengan ketentuan nama fakultas yang
dimunculkan dengan jumlah mahasiswanya yang terkecil.
Untuk menyelesaikan soal ini, kita bisa menggunakan order by dan limit yang telah
dijelaskan pada bab sebelumnya. Strukutur Query dan hasilnya adalah sebagai berikut

2. Menampilkan nama mahasiswa, nama fakultas, alamat dengan syarat nama fakultas sama
dengan Edi (bisa disesuaikan) dan alamatnya tidak sama dengan luki (bisa disesuaikan).
Dalam hal ini kita menggunakan sub query dengan operator in, Struktur dan Hasilnya adalah
sebagai berikut

3. Membuat index di tabel mahasiswa(alamat). Kemudian buat lagi index yang bersifat unik
pada tabel fakultas(fak_nama) kemudian amati perbedaannya ketika memasukkan data yang
sama, Struktur dan Hasilnya adalah

Kita coba untuk insert-kan data yang sama (kecuali nim mahasiswa) pada tabel mahasiswa
dan hasilnya

After that, kita buat lagi unique index pada tabel fakultas, seperti pada gambar berikut

Then, kita insert data yang sama terkecuali pada id fakultas

4. Menjadikan kolom nama di mahasiswa menjadi unik dan inputkan 2 data yang sama.
Kemudian amati perbedaannya.
Untuk membuat kolom menjadi unik, kita bisa menjalankan perintah alter table, Hasilnya
adalah

After That, kita insert-kan data nama mahasiswa yang sama

maka, apabila ada data yang sama, maka kita tidak dapat meng-insertkan data lagi
5. Memindahkan data dari tabel mahasiswa, fakultas ambil kolom nim, nama mahasiswa,
alamat, nama fakultas ke tabel baru yang dinamai “tabel identitas”.

Untuk memindahkan data dari tabel mahasiswa dan fakultas ke tabel identitas, kita
perlu membuat terlebih dahulu tabel identitas, dengan field nim, nama, alamat
mahasiswa dan nama fakultas. Setelah itu kita bisa menggunakan perintah insert into
statement. Hasilnya apabila sukses akan sama seperti pada gambar ;

6. Buatlah contoh penggunaan check pada sub bab pembahasan CHECK. Kemudian masukkan
beberapa data baik yang sesuai dengan criteria check maupun yang bukan dan amati
perbedaannya. Dalam mysql operator check tidak ada.
7. Inputkan data di tabel mahasiswa dimana pada kolom nama sebelum inputkan karakter
dahulukan dengan spasi dan di akhiri dengan tanda “+” seperti berikut : “ andi
cahyono++++”. kemudian munculkan seluruh data dan hilangkan spasi didepan.
Gunakan perintah TRIM untuk menyelesaikannya :

8. Munculkan data mahasiswa dengan hilangkan karakter “+” di akhir data dan karakter “a” di
awal kata pada kolom nama. Dalam hal ini, kita akan menggunakan leading, trailing dan both

EVALUASI PERBEDAAN MYSQL dan POSTGRE SQL PADA BAHASAN SUB


QUERY

Pada pembahasan kali ini terdapat beberapa perbedaan antara MySQL dan POSTGRE SQL.
Akan tetapi juga banyak sekali persamaan antara keduanya pada beberapa query. Salah
satunya adalah pada Sub Query IN, operator Limit, indeks. Dan juga ada beberapa
perbedaaan antara keduanya yaitu dalam pembahasan operator CHECK, dalam POSTGRE
SQL terdapat pembahasan check, akan tetapi pada DBMS MySQL tidak ada pembahasan
tentang operator check. Selain itu adanya perbedaan query pada perintah INSERT INTO
STATEMENT, pada DBMS MySQL untuk mengkopi semua data ke data lain kita perlu
membuat dahulu tabel yang ingin kita kopikan kemudian kita gunakan perintah INSERT
INTO STATEMENT dari tabel awal untuk di kopikan ke tabel yang telah kita buat tadi.
Sedangkan dalam POSTGRE SQL kita tidak perlu membuat tabel terlebih dahulu.

KESIMPULAN dan SARAN

Sub Query merupakan query yang digunakan untuk menspesifikasikan perintah yang
memiliki kondisi tertentu dengan cara memberikan perintah SELECT di dalam SELECT dan
biasanya terdiri dari beberapa kondisi tertentu, serta menggunakan beberapa operator.
Perintah tersebut akan sangat membantu kita apabila memiliki banyak sekali data, sehingga
kita bisa menemukan data tersebut dengan cepat. Tetapi kita juga harus melihat suatu DBMS
tersebut macam-macam query yang variatif atau tidak, karena apabila suatu DBMS tersebut
terdapat satu SQL yang tidak ada sementara pada DBMS lain ada maka kita akan kekurangan
satu fungsi perintah untuk mendapatkan data yang tepat. Jadi juga perhatikan DBMS yang
digunakan agar kita bisa mendapatkan data yang tepat untuk di tampilkan.
MySQL: Pernyataan INSERT INTO SELECT

Dengan MySQL, kita dapat mengkopi informasi dari satu tabel ke tabel.
Dengan pernyataan INSERT INTO SELECT beberapa data satu tabel dapat disisipkan ke
tabel lain yang telah ada.

Sintaks Pernyataan INSERT INTO SELECT

Kita dapat mengkopi seluruh kolom dari tabel satu ke tabel lainya, dengan sintak sebagai
berikut:

1INSERT INTO tabel2

2SELECT * FROM tabel1;

Syaratnya adalah struktur tabel1 dan tabel2 harus sejenis

Kita juga dapat mengkopi beberapa kolom tertentu ke tabel lain dengan cara menuliskan
secara jelas nama-nama kolom yang ada. Adapun sintaksnya sebagai berikut:

1INSERT INTO tabel2

2(kolom1, kolom2,...)

3SELECT (kolom1, kolom2,...)

4FROM tabele;

Database Demo untuk Pernyataan INSERT INTO SELECT

 Buat datatase perpustakaan

1CREATE DATABASE perpustakaan

 Aktifkan database perpustakaan

1USE perpustakaan

 Buat tabel pendaftar, dengan struktur sebagai berikut

1CREATE TABLE pendaftar (


2 id_pendaftar INT(5) PRIMARY KEY AUTO_INCREMENT,

3 nama_pendaftar VARCHAR(30),
tempat_lahir VARCHAR(20),
4
tgl_lahir DATE,
5
syarat ENUM('Lengkap','Tidak Lengkap')
6
);
7

 Isi data pendaftar sebagai berikut

1INSERT INTO pendaftar (nama_pendaftar, tempat_lahir, tgl_lahir, syarat)

2VALUES ('Amirah Maritza','Bantul', '1995-01-01','Lengkap'),

3 ('Firyal Alya', 'Sleman', '1996-01-03','Tidak Lengkap'),

4 ('Sultana Bilqis','Sleman', '1996-02-03','Lengkap'),

5 ('Fahmi ulya', 'Kulon Progo','1996-01-03','Tidak Lengkap'),


('Sultan Auliaa', 'Kulon Progo','1997-02-04','Lengkap');
6

 Buat tabel angggota dengan struktur sebagai berikut

1CREATE TABLE anggota(

2 id_anggota INT(5) PRIMARY KEY AUTO_INCREMENT,

3 nama_anggota VARCHAR(30),

4 tempat_lahir VARCHAR(20),

5 tgl_lahir DATE
);
6

Latihan Pernyataan INSERT INTO SELECT

 Copy seluruh record untuk kolom nama_pendaftar, tempat_lahir, tanggal_lahir pada tabel
pendaftar ke kolom nama_anggota, tempat_lahir, tanggal_lahir pada tabel anggota.

1INSERT INTO anggota (nama_anggota, tempat_lahir,tgl_lahir)

2SELECT nama_pendaftar, tempat_lahir, tgl_lahir

3FROM pendaftar;
4

5Query OK, 5 rows affected (0.16 sec)

6Records: 5 Duplicates: 0 Warnings: 0

 Tampilkan seluruh data pada tabel anggota

1
mysql> SELECT * FROM anggota;
2
+------------+----------------+--------------+------------+
3
| id_anggota | nama_anggota | tempat_lahir | tgl_lahir |
4 +------------+----------------+--------------+------------+

5 | 1 | Amirah Maritza | Bantul | 1995-01-01 |

6 | 2 | Firyal Alya | Sleman | 1996-01-03 |

7 | 3 | Sultana Bilqis | Sleman | 1996-02-03 |

| 4 | Fahmi ulya | Kulon Progo | 1996-01-03 |


8
| 5 | Sultan Auliaa | Kulon Progo | 1997-02-04 |
9
+------------+----------------+--------------+------------+
10
5 rows in set (0.02 sec)
11

Pada contoh di atas dapat kita lihat bahwa seluruh record pada tabel pendaftar tercopy
semua ke tabel anggota. Data Field id_anggota pada tabel anggota terbentuk secara
otomatis karena bertipe AUTO_INCREMENT

 Kosongkan kembali record pada tabel anggota

1mysql> DELETE FROM anggota;

2Query OK, 5 rows affected (0.15 sec)

 Copilah record pada tabel pendaftar untuk pendaftar yang syaratnya telah “Lengkap“

1mysql> INSERT INTO anggota

2 -> SELECT id_pendaftar, nama_pendaftar, tempat_lahir, tgl_lahir

3 -> FROM pendaftar

4 -> WHERE syarat="Lengkap";


5Query OK, 3 rows affected (0.05 sec)

6Records: 3 Duplicates: 0 Warnings: 0

Pada contoh diatas field-field pada tabel anggota tidak dituliskan secara eksplisit
dikarenakan seluruh field akan diisi secara berurutan.

 Tampilkan seluruh record pada tabel anggota

1
mysql> SELECT * FROM anggota;
2
+------------+----------------+--------------+------------+
3| id_anggota | nama_anggota | tempat_lahir | tgl_lahir |

4+------------+----------------+--------------+------------+

5| 1 | Amirah Maritza | Bantul | 1995-01-01 |

6| 3 | Sultana Bilqis | Sleman | 1996-02-03 |

7| 5 | Sultan Auliaa | Kulon Progo | 1997-02-04 |

+------------+----------------+--------------+------------+
8
3 rows in set (0.00 sec)
9

Pada tampilan di atas dapat kita lihat record yang tercopy hanyalah data-data yang syaratnya
Lengkap.

Tugas Pernyataan INSERT INTO SELECT

 Buatlah database dengan nama kepegawaian


 Aktifkan database kepegawaian
 Buatlah tabel rekrutmen dengan struktur sebagai berikut:

1+----------------+-------------+------+-----+---------+----------------+

2| Field | Type | Null | Key | Default | Extra |

3+----------------+-------------+------+-----+---------+----------------+

4| id_rekrutmen | int(5) | NO | PRI | NULL | auto_increment |

5| nama_rekrutmen | varchar(30) | YES | | NULL | |

6| alamat | varchar(30) | YES | | NULL | |

7| toefl | int(3) | YES | | NULL | |


8| ujian | int(3) | YES | | NULL | |

9+----------------+-------------+------+-----+---------+----------------+

 Isi data pada tabel rekrutmen sebagai berikut:

1
+--------------+----------------+------------------------+-------+-------+
2| id_rekrutmen | nama_rekrutmen | alamat | toefl | ujian |

3+--------------+----------------+------------------------+-------+-------+

4| 1 | Joko Widodo | Jl. Parangtritis No. 2 | 400 | 90 |

5| 2 | Rina Sulastri | Jl. Gejayan No.3 | 400 | 60 |

6| 3 | Hani Susetya | Jl. Imogiri No.4 | 350 | 95 |

| 4 | Abdul Majid | Jl. Bantul KM 3 | 421 | 75 |


7
+--------------+----------------+------------------------+-------+-------+
8

 Buat tabel pegawai dengan struktur sebagai berikut:

1+--------------+-------------+------+-----+---------+----------------+

2| Field | Type | Null | Key | Default | Extra |

3+--------------+-------------+------+-----+---------+----------------+

4| id_pegawai | int(5) | NO | PRI | NULL | auto_increment |

5| nama_pegawai | varchar(30) | YES | | NULL | |

6| alamat | varchar(30) | YES | | NULL | |

7+--------------+-------------+------+-----+---------+----------------+

 Copy kolom id_rekrumen, nama_rekrumen, dan alamat pada tabel rekrutmen ke kolom
id_pegawai, nama_pegawai, dan alamat pada tabel pegawai untuk toefl 400 ke atas dan
hasil ujian diatas 70.
 Tampilkan tabel pegawai.

+------------+--------------+------------------------+
1
| id_pegawai | nama_pegawai | alamat |
2
+------------+--------------+------------------------+
3
| 1 | Joko Widodo | Jl. Parangtritis No. 2 |
4| 4 | Abdul Majid | Jl. Bantul KM 3 |

5+------------+--------------+------------------------+

1. SELECT INTO STATEMENT

SELECT INTO adalah sebuah perintah yang ada pada MySQL yang digunakan untuk
memindahkan data dari satu tabel ke tabel yang lain atau dari satu database ke database yang
lain. SELECT INTO sebenarnya juga dapat memilah field yang mana sajakah yang ingin kita
pindahkan dengan cara menyebutkan nama fieldnya. berikut adalah beberapa contoh
penggunaan SELECT INTO:

 Membuat backup sebuah tabel

SELECT * INTO backup_transaksi FROM transaksi

 Membuat backup sebuah tabel ke dalam database yang baru

SELECT * INTO backup_trsndskdi IN ‘backup_database.mdb’ FROM transaksi

 Membuat backup beberapa kolom sebuah tabel

SELECT ID,NamaPelanggan INTO backup_transaksi FROM transaksi

 Membuat backup sebuah tabel dengan syarat


SELECT ID,NamaPelanggan INTO backup_transaksi FROM transaksi WHERE
NamaPelanggan=’Usman’

 Membuat backup antara 2 tabel

SELECT ID,NamaPelanggan INTO backup_transaksi FROM transaksi JOIN Produk ON


transaksi.IDProduk=Produk.IDProduk

INSERT INTO SELECT insert ke dalam tabel yang ada.


SELECT INTO membuat tabel baru dan menempatkan data di dalamnya.

SELECT Orders.OrderID, Customers.CustomerName


FROM Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID;

INSERT INTO SELECT insert ke dalam tabel yang ada.


SELECT INTO membuat tabel baru dan menempatkan data di dalamnya.
1. Menu Bar

Menu Bar merupakan kumpulan menu perintah yang dikelompokkan berdasarkan


kriteria pengoprasiannya. Menu Bar ini juga telah dikelompokkan berdasarkan fungsi
dan kegunaannya masing-masing sbb :

Nama
Keterangan
Menu
Menu ini berfungsi untuk mengatur suatu file, seperti New
File
Project, Open Project, Save Project, Print dan lain-lain
Menu ini berfungsi untuk memproses pengeditan objek,
Edit komponen dan kode di Code Editor. Contoh : Cut, Copy, Paste,
Select All dll.
Menu ini berfungsi untuk mengaktifkan bagian-bagian dari
View
Integrated Development Environment.
Menu ini berfungsi untuk manajemen proyek beserta
Project
pendukungnya.
Menu ini berfungsi untuk melakukan proses format tampilan di
Format
form.
Menu ini berfungsi untuk melacak kesalahan program saat
Debug
dijalankan.
Menu ini berfungsi untuk menangani proses kompilasi program,
Run
seperti Run, Build, Step Over, Debug dan lain-lain.
Menu ini berfungsi untuk mengakses data yang diperlukan pada
Query
aplikasi database.
Menu ini berfungsi untuk pengaturan diagram terutama pada
Diagram
proses perancangan.
Menu ini berfungsi untuk menyediakan perlengkapan tambahan
Tools
yang diperlukan dalam penyusunan program
Menu ini berfungsi untuk melakukan pengaturan program
Add-Ins
tambahan pada Visual Basic 6.0
Menu ini berfungsi untuk melakukan pengaturan window yang
Window
sedang aktif (terbuka)
Menu ini berfungsi untuk memberikan informasi bagi pemakai
Help
Visual Basic 6.0

2. Toolbar

Toolbar merupakan sekumpulan tombol yang mewakili suatu perintah tertentu pada
Visual Basic. Kehadiran tombol-tombol speed pada toolbar akan sangat membantu
dalam mempercepat akses perintah. Biasanya tombol-tombol ini merupakan perintah-
perintah yang sering digunakan dan terdapat pula pada menu Visual Basic, seperti
pada menu Edit, Copy. Toolbar ini juga telah dikelompokkan berdasarkan fungsi dan
keterangannya masing-masing sbb :

Tombol Nama Fungsi


Add Standard Exe Menambahkan proyek baru jenis standard ke dalam
Project proyek yang telah ada
Menambahkan form atau obyek baru ke dalam
Add Form
proyek yang sedang aktif / dikerjakan
Menampilkan Menu Editor yang berfungsi untuk
Menu Editor
membuat atau mengubah tampilan menu
Membuka sebuah proyek yang pernah dibuat
Open Object
sehingga aktif kembali pada editor Visual Basic
Menyimpan proyek yang sedang aktif tanpa
Save Project
menutup proyek tersebut.
Cut Memotong obyek yang dipilih pada layar dan
menyimpannnya pada memori.
Membuat salinan (duplikat) obyek yang dipilih pada
Copy
layar dan menyimpannya pada memori.
Membuat salinan obyek yang telah disimpan di
Paste
memori untuk dipasang dilokasi baru.
Find Mencari teks tertentu pada jendela kode
Membatalkan perintah atau tindakan
Undo
mengembalikan ke perubahan semula dilakukan
Mengulangi perintah atau tindakan mengembalikan
Redo ke perubahan semula dilakukan (Kebalikan dari
Undo)
Start Menjalankan program yang sedang aktif
Menghentikan sementara program yang sendang
Break
berjalan
Menghentikan program dan kembali ke mode
End
perancangan program.
Menampilkan jendela Project Explorer yang berisi
Project Explorer
komponen beserta bagian-bagiannya.
Properties Menampilkan jendela properties, yaitu pengatur
Window properti obyek
Form Layout Menampilkan jendela Form Layout yaitu pengatur
Window tata letak form di layar komputer
Menampilkan Object Browser yang mengorganisir
Object Browser
obyek yang dipakai dalam program
Menampilkan jendela Toolbox yang menyediakan
Toolbox
berbagai macam kontrol
Data View
Menampilkan jendela Data View
Window
Visual
Component Menampilkan jendela Visual Component Manager
Manager

3. Toolbox

Toolbox merupakan sebuah jendela di mana obyek atau kontrol ditempatkan, yang
nantinya dibutuhkan untuk membentuk suatu program yang dilakukan dengan cara
memasangnya pada sebuah Form. Adapun penjelasan dan fungsi dari masing-masing
kontrol yang terdapat pada Toolbox sbb :
Nama
Bentuk Fungsi
Kontrol
Pointer ini bukan termasuk kontrol melainkan penunjuk
Pointer kontrolyang berfungsi untuk memindahkan atau mengubah
ukuran kontrol yang ada pada sebuah form.
Untuk menampilkan file gambar (Bitmaps, Icon, Gif, Jpeg,
PictureBox dsb) baik gambar statis maupun aktif. Standar penulisannya
Pic_, contoh : Pic_Foto.
Untuk menampilkan teks, tetapi pemakai tidak bisa
Label berinteraksi dengannya. Standar penulisan pada umumnya
adalah Lbl_, contoh : Lbl_Kota.
Untuk menempatkan teks pada form dan pemakai dapat
TextBox mengedit teks tersebut. Standar penulisan pada umumnya
adalah Txt_, contoh : Txt_Alamat.
Untuk mengelompokkan beberapa kontrol (Group) pada
Frame suatu form. Standar penulisan umumnya adalah Fra_,
contoh : Fra_Identitas.
Untuk membuat tombol pelaksana suatu perintah atau
Command
tindakan ketika digunakan. Standar penulisan umumnya
Button
adalah Cmd_, contoh : Cmd_Simpan.
Untuk membuat kotak check yang dapat memilih satu atau
CheckBox banyak keadaan. Standar penulisan umumnya adalah :
Chk_, contoh : Chk_Hobby.
Untuk memilih dan mengaktifkan satu keadaan dari banyak
Option
pilihan yang ada. Standar penulisan umumnya adalah Opt_,
Button
contoh : Opt_Agama.
Sebagai tempat untuk mengetikkan pilihan atau memilih
ComboBox suatu pilihan melalui Drop-Down-List. Standar
penulisannya adalah Cbo_, contoh : Cbo_Ukuran.
Untuk menampilkan daftar pilihan yang dapat digulung
ListBox secara Horizontal maupun Vertikal. Standar penulisan
umumnya adalah Lis_, contoh : Lis_Jenis.
Untuk menggulung suatu area kerja dengan jangka lebar
HscrollBar pada posisi Horizontal. Standar penulisan umumnya adalah
Hsb_, contoh : Hsb_Warna
Untuk menggulung suatu area kerja dengan jangka lebar
VscrollBar pada posisi Vertikal. Standar penulisan umumnya adalah
Vsb_, contoh : Vsb_Warna.
Untuk mengoperasikan waktu kejadian pada rutin program
Timer dalam interval yang ditentukan. Standar penulisan
umumnya adalah Tmr_, contoh : Tmr_Isi.
Untuk menampilkan daftar drive komputer yang aktif dan
DriveList
dapat memilih sebuah drive. Standar penulisan umumnya
Box
adalah Drv_, contoh : Drv_Kerja.
Untuk menampilkan daftar directory dan path pada drive
DirList Box kerja terpilih. Standar penulisan umumnya adalah Dir_,
contoh : Dir_Surat.
Untuk menampilkan daftar file pada directory dan drive
File ListBox yang aktif. Standar penulisan umumnya adalah Fil_, contoh
: Fil_Gambar.
Untuk membentuk obyek dua dimensi seperti square, oval,
Shape ellips dan lain-lain. Standar penulisan umumnya adalah
Shp_, contoh : Shp_Lingkaran.
Untuk menggambar garis lurus dengan banyak variasi
Line dengan ketebalan yang bisa diatur. Standar penulisan
umumnya adalah Lin_, contoh : Lin_Satu.
Untuk menampilkan gambar icon, bitmap, atau metafile
Image pada form. Standar penulisan umumnya adalah Img_,
contoh : Img_Foto.
Sebagai sarana akses data dalam suatu database. Fasilitas
Data Control ini ada dalam konsep DAO. Standar penulisan umumnya
adalah Dat_, contoh : Dat_Mhs.
Untuk menghasilkan proses Link dan Embed obyek antar
OLE aplikasi. Standar penulisan Umumnya adalah Ole_, contoh
: Ole_Sales.

4. Form Window

Form Window (Jendela Form) merupakan area kerja di mana sobat nantinya akan
merancang suatu program aplikasi Visual Basic. Dan pada jendela form ini juga sobat
bisa meletakkan kontrol (obyek) seperti : Command Button, TextBox, Label,
CheckBox, dan lain-lain. Sedangkan untuk ukuran dari jendela form pada mulanya
berukuran kecil namun sobat dapat mengubah ukurannya sesuai dengan kebutuhan.
Contohnya formnya sbb :
5. Project Explorer

Project Explorer merupakan area yang berisi semua file program aplikasi Visual
Basic. Suatu aplikasi dalam Visual Basic biasanya disebut dengan Project (Proyek),
dan setiap proyek dapat terdiri dari satu atau lebih file misalnya : Form, Modul, Class
dan lain sebagainya.

6. Window Properties

Pada Window ini berisi semua informasi mengenai kontrol (obyek) yang dibuat, dan
bertugas menyiapkan segala properti dari kontrol yang nantinya diperlukan ketika
melakukan perancangan User Interface maupun pemrograman. Pada bagian paling
atas dari jendela properties terdapat kotak yang menunjukkan nama obyek yang
sedang aktif. Dimana nama dari obyek akan tampil pada kotak tersebut ketika kita
melakukan klik langsung pada obyek yang terpasang pada form.

7. Form Layout Window

Form Layout Window merupakan jendela yang menunjukkan tata letak dari form saat
ditampilkan pada layar monitor. Dengan kata lain atas bantuan fitur ini, sobat akan
tahu persis dimana posisi aplikasi saat dijalankan pada layar monitor.

8. Code Window

Code Window merupakan area dimana sobat dapat menuliskan kode-kode program
Visual Basic. Suatu kode-kode program merupakan kumpulan dari instruksi untuk
menjalankan obyek yang berupa kontrol maupun form serta logika program. Untuk
menampilkan jendela ini sobat cukup melakukan double klik pada kontrol maupun
form, yang dimana kursor nantinya kita gunakan untuk menuliskan kode-kode
program berada diantara perintah sbb :
2. Komponen Program

Dalam membuat suatu proyek (Project) tentu tidak lepas dari pemakaian komponen-
komponen program. Selain berbentu tampilan pada form, beberapa komponen program
biasanya bisa terdiri dari kode-kode program. Komponen program yang ditempatkan pada
form biasanya berbentuk file (.Frm), sedang komponen program yang berisi kode-kode
program bisa terdiri dari file (.Bass, .Cls, dan lain-lain) baik yang dibuat lewat Module, Class
Module, User Control, Property Page dan lain sebagainya. Contoh sbb :

3. Kode Program

Kode program merupakan serangkaian tulisan perintah yang akan dilaksanakan jika suatu
obyek dijalankan. Kode-kode program ini nantinya akan mengontrol dan menentukan
jalannya suatu obyek. Untuk contohnya sebagai berikut :
4. Event

Event merupakan peristiwa atau kejadian yang diterima oleh suatu obyek, misalnya Click,
Double Click, Keypress dan sebagainya.

Sebuah program yang baik harus mampu mengakomodasi seluruh kemampuan event yang
akan dilakukan oleh pemakainya. Akan tetapi tentu saja tidaklah mudah untuk dapat
meyediakan puluhan kemungkinan event pada sebuah program.

Nah berikut ini beberapa event yang biasanya sering digunakan oleh si pemakai program,
yaitu :

Event
Untuk Keterangan
Mouse
Event ini biasanya terjadi bila tombol kiri pada mouse ditekan dan
Click
dilepas dengan cepat saat posisi pointer berada tepat diatas obyek.
Event ini biasanya terjadi bila tombol kiri pada mouse ditekan dan
Double
dilepas dengan cepat sebanyak dua kali saat pointer berada tepat
Click
diatas obyek.
Event ini biasanya terjadi bila tombol kiri pada mouse ditekan dan
Drag
ditahan kemudian menyeret/menggeser obyek dari satu tempat ke
Drop
tempat lain, kemudian melepas tombol kiri pada mouse tersebut.
Event ini hampir sama dengan Drag Drop hanya saja Event Drag
Drag
Over ini biasanya digunakan untuk mengubah bentuk tampilan
Over
pointer mouse saat obyek diseret.
Mouse Event ini biasanya terjadi bila tombol kiri pada mouse ditekan dan
Down ditahan.
Mouse Event ini biasanya terjadi bila tombol kiri pada mouse dilepas
Up sehabis ditekan.
Mouse Event ini biasanya terjadi bila mouse dipindah posisinya ke tempat
Move lain tanpa menekan tombol mouse tersebut.

Event
Untuk Keterangan
Keyboard
Event ini biasanya terjadi bila sebuah tombol pada keyboard
ditekan. Dan pada umumnya nilai parameter dari KeyPress
Keypress
merupakan kode ASCII untuk menyatakan jenis tombol keyboard
yang ditekan.
Event ini biasanya terjadi bila sobat menekan dan menahan
KeyDown
sebuah tombol pada keyboard.
Event ini biasanya terjadi bila sobat melepaskan sebuah tombol
KeyUp
keyboard dari penekanan.

Event
Untuk Keterangan
Perubahan
Event ini biasanya terjadi bila sebuah form menjadi window
Activate
yang aktif.
Event ini biasanya terjadi ketika anda berpindah dari satu form
Deactive
ke form lain.
Event ini biasanya terjadi bila sebuah obyek menjadi satu-
GotFocus satunya fokus. Sebuah form dapat membuat obyek fokus bila
form tersebut menjadi window aktif.
Event ini biasanya terjadi bila sebuah obyek kehilangan fokus
LostFocus
karena ada obyek lain yang mendapatkan fokus.
Event ini biasanya terjadi bila sebuah form dibuka atau
Load
dipanggil.
Unload Event ini biasanya terjadi bila sebuah form ditutup.
Event ini biasanya terjadi bila semua referensi untuk form atau
Initialize class dihapus dari memori komputer. Pada Obyek form, event ini
terjadi setelah event unload.
Event ini biasanya terjadi bila sebuah form perlu digambar
Paint ulang. Dan biasanya dilakukan saat sebuah form dipindahkan
dari form lain yang menutupinya.
Resize Event ini biasanya terjadi bila sebuah form diubah ukurannya.
Change Event ini biasanya terjadi bila isi dari sebuah kontrol diubah.
Query Event ini biasanya terjadi apabila suatu aplikasi ditutup. Dan
Unload biasanya digunakan untuk memastikan bahwa semua yang
berhubungan dengan aplikasi juga telah ditutup, atau
memastikan bahwa semua data telah disimpan sebelum aplikasi
ditutup.

Event-event
Keterangan
Lainnya
Event ini biasanya terjadi ketika event lain dijalankan
Timer sebelum event timer ini. Event ini hanya berhubungan dengan
kontrol timer.
Event ini biasanya terjadi saat anda menyeret kotak kecil pada
Scroll scroll bar. Event ini hanya berhubungan dengan kontrol scroll
bar.
Event ini biasanya terjadi saat standar path untuk mencari
PathChange suatu file diubah. Event ini hanya ada pada kontrol File List
Box.
Event ini biasanya terjadi apapbila kode pencarian daftar file
PatternChange
diubah, misalnya *.* diubah menjadi *.jpg.
Event ini biasanya digunakan untuk memastikan data telah
Validate
ditangani dengan baik.
Event ini biasanya terjadi saat kontrol Grid sedanga
SelChange
digunakan .

5. Metode

Metode (Method) merupakan suatu set perintah seperti halnya fungsi dan prosedur, tetapi
sudah tersedia di dalam suatu obyek. Motode biasanya akan mengerjakan suatu tugas khusus
pada suatu obyek. Contoh sbb :

6. Module

Module bisa dikatakan hampir sama dengan form, hanya saja pada module tidak terdapat
obyek melainkan berisi kode-kode program atau prosedure yang dapat dilaksanakan dalam
program aplikasi. Contoh dari kode module sbb :
Itulah tadi sedikit penjelasan singkat mengenai Pengenalan Pemrograman Visual Basic,
semoga bermanfaat dan dapat menambah pengetahuan kita khususnya bagi yang tertarik
mempelajari bahasa pemrograman Visual Basic.

Lalu bagaimana seharusnya mengatasi kondisi keseleo dengan benar? Berikut ini adalah
panduan tepat pertolongan pertama untuk keseleo dengan menggunakan prinsip RICE, yakni,
Rest atau istirahat, Ice atau kompres es, Compression atau tekanan, dan Elevate atau
tinggikan. Dan berikut ini informasi detil pertolongan pertama untuk keseleo.

1. Rest (Istirahat)

Begitu Anda mendapat cedera yang diduga menyebabkan keseleo, sesegera mungkin
berhentilah beraktivitas. Duduklah dengan tenang dan letakkan bagian yang terkena keseleo
pada bidang datar.

Bila terjadi di kaki, rentangkan kaki Anda lurus dalam posisi duduk. Sedangkan bila terjadi di
tangan, rentangkan lurus tangan Anda pada meja. Istirahatkan otot Anda, ini membantu untuk
membuat otot tidak berkontraksi. Karena kontraksi bisa menyebabkan kondisi luka pada
ligamen melebar.

2. Ice (Kompres Es)

Es memiliki kemampuan untuk segera membekukan darah dan luka. Jadi begitu cedera
terjadi, jangan tunda segera ambil sebongkah es dalam ukuran sedang atau setidaknya sesuai
dengan ukuran area keseleo. Lalu kompreskan pada permukaan kulit, Anda bisa gunakan
tutup kain atau menggunakan kantung es untuk mencegah kulit teriritasi dingin.

Lakukan ini setidaknya 10 menit dengan durasi 2 menit, angkat 30 detik, kompres kembali 2
menit dan lakukan berulang sampai 10 menit. Paparan es di permukaan kulit lebih dari 3
menit bisa mengiritasi kulit. Ulangi tiap 3 -4 jam untuk membantu mencegah pembengkakan
dan peradangan.
3. Compression (Tekanan)

Setelah dirasa cukup dengan terapi es 10 menit, segera tutup area sakit dengan dekker,
pembalut elastis, atau perban. Perban dengan cukup kuat untuk menahan ligamen sehingga
peregangan atau robekan tidak melebar, tetapi jangan terlalu ketat karena bisa mengganggu
sirkulasi darah.

Pembalutan harus dibuka setiap 3 – 4 jam untuk pengompresan ulang sekaligus untuk
membantu mencegah sirkulasi darah menjadi terhambat. Karena untuk menyembuhkan luka
di dalam ligamen Anda tetap memerlukan aliran darah yang lancar demi menghantarkan
cukup nutrisi untuk proses regenerasi sel pada ligamen. Lakukan proses pembungkusan ini
setidaknya selama 4 – 6 hari.

4. Elevate (Tinggikan)

Pada saat tidur dan duduk, sebaiknya bagian yang cedera ditinggikan supaya tidak terjadi
pembengkakan. Anda bisa gunakan bantal untuk menahan posisi kaki atau tangan. Hindari
posisi tinggi yang membuat efek tegang karena proses penyembuhan membutuhkan otot tetap
relaks.

Itulah 4 langkah sederhana dalam pertolongan pertama untuk keseleo. Bila rasa sakit sangat
mengganggu, Anda bisa konsumsi obat anti inflamasi non steroid seperti ibuprofen. Obat ini
cukup ampuh untuk mengurangi rasa nyeri pada area otot dan sendi selama masa
penyembuhan keseleo. Tetapi obat ini tidak memiliki pengaruh terhadap penyembuhan luka
dalam itu sendiri dan penggunaan obat medis apapun sebaiknya dikonsumsi dalam
pengawasan dokter.

Read more: https://www.deherba.com/pertolongan-pertama-untuk-keseleo-dan-otot-


terkilir.html#ixzz5AFrjZGUC

Pertolongan pertama yang dapat anda lakukan untuk menangani terkilir.

Tindakan perawatan terkilir yang bisa di lakukan dirumah untuk Penanganan yang tepat dan sesuai
seperti yang disarankan oleh dokter yaitu dengan menerapkan metode RICE yang telah terbukti
ampuh mengobati sprain. RICE adalah singkatan dari Rest Ice Conpression Elavate .

1. Rest (istirahat)
Istirahat dan membatasi aktivitas. Hal ini bertujuan agar cedera yang dialami penderita tidak
bertambah parah. Cobalah untuk mengurangi pergerakan yang bisa memberikan tekanan pada
bagian sendi yang terkena sprain. Dianjurkan untuk penggunaan selempang bebat yang berfungsi
untuk mengistirahatkan bagian tubuh yang terkilir.

2. Terapi Ice (es)


Terapi dengan menggunakan es ini bertujuan untuk mengurangi rasa sakit dan pembengkakan pada
bagian yang terkilir. Terapi ice diberikan dengan cara menempelkan kantung es pada bagian yang
keseleo selama 3 menit setiap 4 jam sekali. Ingat Jangan sesekali menempelkan es selama lebih dari
3 menit pada satu waktu karena bisa menyebabkan kerusakan jaringan.
3. Compression (kompresi)
Tindakan ini bisa anda lakukan dengan menggunakan pembalut elastis atau jenis perban yang bisa
membungkus anggota tubuh yang terkilir. Pembalutan yang anda berikan harus kuat tetapi jangan
terlalu ketat sehingga tidak mengganggu sirkulasi darah. Pembalutan harus dibuka apabila terjadi
kesemutan dan kebiru-biruan didaerah sekitar. Baru kemudian dilakukan pembalutan ulang dengan
lebih rapi. Kompresi dapat dilakukan selama 6 hari

4. Elevate (tinggikan)
Peninggian bertujuan untuk mengurangi pembengkakan. Jika memungkinkan metode ini lebih efektif
saat berbaring. Angkatlah anggota tubuh yang terkilir dengan posisi lebih tinggi dari jantung
kemudian menempatkan bantal di bawah lengan atau kaki yang cedera.

Itulah cara pertolongan pertama untuk terkilir yang bisa di lakukan dirumah. untuk mengurangi
nyeri juga bisa diberikan obat pereda nyeri. Biasanya keseleo akan sembuh setelah menerima
perawatan tersebut. Namun pada tingkat kerusakan yang parah dibutuhlan perawatan lanjutan.

Normalisasi database merupakan suatu pendekatan sistematis untuk meminimalkan


redundansi data pada suatu database agar database tersebut dapat bekerja dengan optimal.
Jika anda seorang database administrator ketika terjadi sesuatu pada database seperti
penurunan kinerja, mungkin anda akan ditanya apakah database tersebut telah di normalisasi?

Tujuan Normalisasi Database

Tujuan normalisasi database adalah untuk menghilangkan dan mengurangi redudansi data
dan tujuan yang kedua adalah memastikan dependensi data (Data berada pada tabel yang
tepat).

Jika data dalam database tersebut belum di normalisasi maka akan terjadi 3 kemungkinan
yang akan merugikan sistem secara keseluruhan.

1. INSERT Anomali : Situasi dimana tidak memungkinkan memasukkan beberapa jenis data
secara langsung di database.
2. DELETE Anomali: Penghapusan data yang tidak sesuai dengan yang diharapkan, artinya data
yang harusnya tidak terhapus mungkin ikut terhapus.
3. UPDATE Anomali: Situasi dimana nilai yang diubah menyebabkan inkonsistensi database,
dalam artian data yang diubah tidak sesuai dengan yang diperintahkan atau yang diinginkan.

Normalisasi Database

Normalisasi database terdiri dari banyak bentuk, dalam ilmu basis data ada setidaknya 9
bentuk normalisasi yang ada yaitu 1NF, 2NF, 3NF, EKNF, BCNF, 4NF, 5NF, DKNF,
dan 6NF. Namun dalam prakteknya dalam dunia industri bentuk normalisasi ini yang paling
sering digunakan ada sekitar 5 bentuk.

Normal Form
Data yang direkam dan dimasukkan secara mentah dalam suatu tabel pada bentuk ini sangat
mungkin terjadi inkonsistensi dan anomali data

Contoh Normal Form

Normalisasi Database Form (Rudiawan16)

1. Normal Form (1NF)

Bentuk normal yang pertama atau 1NF mensyaratkan beberapa kondisi dalam sebuah
database, berikut adalah fungsi dari bentuk normal pertama ini.

 Menghilangkan duplikasi kolom dari tabel yang sama.


 Buat tabel terpisah untuk masing-masing kelompok data terkait dan mengidentifikasi setiap
baris dengan kolom yang unik (primary key).

Contoh Normalisasi Database 1NF


Nirmalisasi Database 1NF (Rudiawan16)

dari manual bon pembelian diatas kita dapat menjadi bentuk normal pertama dengan
memisah-misahkan data pada atribut-atribut yang tepat dan bernilai atomik, juga seluruh
record / baris harus lengkap adanya.

2. Normal form (2NF)

Syarat untuk menerapkan normalisasi bentuk kedua ini adalah data telah dibentuk dalam
1NF, berikut adalah beberapa fungsi normalisasi 2NF.

 Menghapus beberapa subset data yang ada pada tabel dan menempatkan mereka pada
tabel terpisah.
 Menciptakan hubungan antara tabel baru dan tabel lama dengan menciptakan foreign key.
 Tidak ada atribut dalam tabel yang secara fungsional bergantung pada candidate key tabel
tersebut.

Contoh normalisasi database bentuk 2NF

Normalisasi Database 2NF (Rudiawan16)

Bentuk normal kedua dengan melakukan dekomposisi tabel diatas menjadi beberapa tabel
dan mencari kunci primer dari tiap-tiap tabel tersebut dan atribut kunci haruslah unik.

3. Normal Form (3NF)

Normalisasi database dalam bentuk 3NF bertujuan untuk menghilangkan seluruh atribut atau
field yang tidak berhubungan dengan primary key. Dengan demikian tidak ada
ketergantungan transitif pada setiap kandidat key. Syarat dari bentuk normal ketiga atau 3NF
adalah :
 Memenuhi semua persyaratan dari bentuk normal kedua.
 Menghapus kolom yang tidak tergantung pada primary key.

Contoh Normalisasi Database Bentuk 3NF

Bentuk normal ketiga mempunyai syarat, setiap relasi tidak mempunyai atribut yang
bergantung transitif, harus bergantung penuh pada kunci utama dan harus memenuhi bentuk
normal kedua (2 NF).

Normalisasi Database 3NF (Rudiawan16)

BCNF Boyce–Codd normal form

Merupakan sebuah teknik normalisasi database yang sering disebut 3.5NF, memiliki
hubungan yang sangat erat dengan bentuk 3NF. Pada dasarnya adalah untuk menghandle
anomali dan overlooping yang tidak dapat di handle dalam bentuk 3NF. Normalisasi database
bentuk ini tergantung dari kasus yang disediakan, tidak semua tabel wajib di normalisasi
dalam bentuk BCNF.

Normalisasi merupakan teknik analisis data yang mengorganisasikan atribut-atribut data


dengan cara mengelompokkan sehingga terbentuk entitas yang non-redundant, stabil, dan
fleksible
Normalisasi dilakukan sebagai uji coba pada suatu relasi secara berkelanjutan untuk
menentukan apakah relasi itu sudah baik, yaitu dapat dilakukan proses insert,update,delete,
dan modifikasi pada satu atau beberapa atribut tanpa mempengaruhi integritas data dalam
relasi tersebut.

*Pada proses normalisasi terhadap tabel pada database dapat dilakukan dengan tiga tahap
normalisasi antara lain :

1. BENTUK TIDAK NORMAL (UNNORMALIZED FORM)

Bentuk ini merupakan kumpulan data yang akan direkam, tidak ada keharusan

mengikukti format tertentu, dapat saja data tidak lengkap atau terduplikasi.
Data dikumpulkan apa adanya sesuai dengan saat menginput.

Untuk mentransformasikan tabel yang belum ternomalisasi di atas menjadi tabel yang
memenuhi kriteria 1NF adalah kita harus merubah seluruh atribut yang multivalue menjadi
atribut single value, dengan cara menghilangkan repeating group pada tabel di atas.

Repeating Group (elemen data berulang) adalah (No_Property, Alamat_Property,Tgl_Pinjam,


Tgl_Selesai, Biaya, No_Pemilik, Nama_Pemilik)

2. BENTUK NORMAL KE SATU (FIRST NORMAL FORM / 1 NF)

Pada tahap ini dilakukan penghilangan beberapa group elemen yang berulang agar menjadi
satu harga tunggal yang berinteraksi di antara setiap baris pada suatu tabel, dan setiap atribut
harus mempunyai nilai data yang atomic (bersifat atomic value). Atom adalah zat terkecil
yang masih memiliki sifat induknya, bila terpecah lagi maka ia tidak memiliki sifat induknya.

Syarat normal ke satu (1-NF) antara lain:

1. setiap data dibentuk dalam flat file, data dibentuk dalam satu record demi satu record nilai
dari field berupa “atomic value”.

2. tidak ada set atribute yang berulang atau bernilai ganda.

3. telah ditentukannya primary key untuk tabel / relasi tersebut.


4. tiapatribut hanya memiliki satu pengertian.

Langkah pertama yang dilakukan pada Tabel Pelanggan Biaya (pada Tabel 9.3) tersebut
adalah menghilangkan elemen data yang berulang dengan data-data Pelanggan yang sesuai
pada setiap baris. Hasil dari tabel yang telah memenuhi bentuk normal pertama dapat dilihat
pada Tabel 9.4. kita dapat mengidentifikasi primary key untuk relasi Pelanggan_Biaya yang
masih memiliki composite key (No_Pelanggan, No_Property). Pada kasus ini kita akan
memperoleh primary key yang bersifat composite key. Relasi Pelanggan_Biaya dapat
didefinisikan sebagai berikut. Pelanggan_Biaya =(No_Pelanggan, No_Property, Nama,
Alamat_Property, Tgl_Pinjam, Tgl_Selesai, Biaya,No_Pemilik, Nama_Pemilik)

3. BENTUK NORMAL KE DUA (SECOND NORMAL FORM / 2 NF)

Bentuk normal kedua didasari atas konsep full functional dependency (ketergantungan
fungsional sepenuhnya) yang dapat didefinisikan sebagai berikut. Jika A adalah atribut-
atribut dari suatu relasi, B dikatakan full functional dependency (memiliki ketergantungan
fungsional terhadap A, tetapi tidak secara tepat memiliki ketergantungan fungsional dari
subset (himpunan bagian) dari A.

Syarat normal kedua (2-NF) sebagai berikut.

1. Bentuk data telah memenuhi kriteria bentuk normal kesatu.

2. Atribute bukan kunci (non-key) haruslah memiliki ketergantungan fungsional sepenuhnya


(fully functional dependency) pada kunci utama / primary key.

Tabel Tabel Pelanggan Biaya dalam bentuk normal kedua (2-NF)


4. BENTUK NORMAL KE TIGA (THIRD NORMAL FORM / 3 NF)

Walaupun relasi 2-NF memiliki redudansi yang lebih sedikit dari pada relasi 1-NF, namun
relasi tersebut masih mungkin mengalami kendala bila terjadi anomaly peremajaan (update)
terhadap relasi tersebut. Misalkan kita akan melakukan update terhadap nama dari seorang
Pemilik (pemilik), seperti Durki (No_Pemilik: CO93), kita harus melakukan update terhadap
dua baris dalam relasi Property_Pemilik (lihat Tabel 9.5, (c) relasi Property_Pemilik). Jika
kita hanya mengupdate satu baris saja, sementara baris yang lainnya tidak, maka data didalam
database tersebut akan inkonsisten / tidak teratur. Anomaly update ini disebabkan oleh suatu
ketergantungan transitif (transitive dependency). Kita harus menghilangkan ketergantungan
tersebut dengan melakukan normalisasi ketiga (3-NF).

Syarat normal ketiga (Third Normal Form / 3 NF) sebagai berikut.

1. Bentuk data telah memenuhi kriteria bentuk normal kedua.

2. Atribute bukan kunci (non-key) harus tidak memiliki ketergantungan transitif, dengan kata
lain suatu atribut bukan kunci (non_key) tidak boleh memiliki ketergantungan fungsional
(functional dependency) terhadap atribut bukan kunci lainnya, seluruh atribut bukan kunci
pada suatu relasi hanya memiliki ketergantungan fungsional terhadap priamry key di relasi itu
saja.

Seluruh atribut non-primary key pada relasi Pelanggan dan Biaya di atas terlihat memiliki
ketergantungan fungsional (functional dependency) terhadap primary key dari masing-masing
tabel / relasi. Relasi / tabel Pelanggan dan Biaya di atas tidak memiliki ketergantungan
transitif (transitive dependency), sehingga tabel tersebut telah memenuhi
kriteria normal ketiga (3-NF). Seluruh atribut non-primary key pada relasi Property_Pemilik
di atas terlihat memiliki ketergantungan fungsional (functional dependency) terhadap primary
key, kecuali Nama_Pemilik yang masih memiliki ketergantungan fungsional
(functional dependency) terhadap No_Pemilik. Inilah contoh ketergantungan dari transitif
(transitive dependency), yang terjadi ketika atribut non-primary key (Nama_Pemilik)
bergantung secara fungsi terhadap satu atau lebih atribut non-primary key lainnya
(No_Pemilik). Kita harus menghilangkan ketergantungan transitif (transitive dependency)
tersebut dengan menjadikan relasi Property_Pemilik menjadi 2 relasi / tabel dengan format /
bentuk sebagai berikut.

· Relasi / Tabel Property_Untuk_Pemilik yang terdiri dari atribut-atribut:

Alamat_Property, Biaya, No_PemilikNo_property

{No_property sebagai primary key}

· Dan relasi Pemilik yang terdiri dari atribut-atribut:

Nama_PemilikNo_Pemilik

{No_Pemilik sebagai primary key}

Hasil akhir normalisasi tabel Pelanggan_Biaya sampai ke bentuk normal ketiga adalah

sebagai berikut X� fn`&��%.0pt; font-family:”Calibri”,”sans-serif”; mso-ascii-font-


family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:”Times New
Roman”; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-
theme-font:minor-latin;}

4. BENTUK NORMAL KE TIGA (THIRD NORMAL FORM / 3 NF)

Walaupun relasi 2-NF memiliki redudansi yang lebih sedikit dari pada relasi 1-NF,

namun relasi tersebut masih mungkin mengalami kendala bila terjadi anomaly

peremajaan (update) terhadap relasi tersebut.

Misalkan kita akan melakukan update terhadap nama dari seorang Pemilik (pemilik), seperti
Durki (No_Pemilik: CO93), kita harus melakukan update terhadap dua baris dalam relasi
Property_Pemilik (lihat Tabel 9.5, (c) relasi Property_Pemilik). Jika kita hanya mengupdate
satu baris saja, sementara baris yang lainnya tidak, maka data didalam database tersebut akan
inkonsisten / tidak teratur. Anomaly update ini disebabkan oleh suatu ketergantungan transitif
(transitive dependency). Kita harus menghilangkan ketergantungan tersebut dengan
melakukan normalisasi ketiga (3-NF).

Syarat normal ketiga (Third Normal Form / 3 NF) sebagai berikut.

1. Bentuk data telah memenuhi kriteria bentuk normal kedua.


2. Atribute bukan kunci (non-key) harus tidak memiliki ketergantungan transitif, dengan kata
lain suatu atribut bukan kunci (non_key) tidak boleh memiliki ketergantungan fungsional
(functional dependency) terhadap atribut bukan kunci lainnya, seluruh atribut bukan kunci
pada suatu relasi hanya memiliki ketergantungan fungsional terhadap priamry key di relasi itu
saja. Seluruh atribut non-primary key pada relasi Pelanggan dan Biaya di atas
terlihat memiliki ketergantungan fungsional (functional dependency) terhadap primary key
dari masing-masing tabel / relasi. Relasi / tabel Pelanggan dan Biaya di atas tidak
memiliki ketergantungan transitif (transitive dependency), sehingga tabel tersebut telah
memenuhi kriteria normal ketiga (3-NF).

Seluruh atribut non-primary key pada relasi Property_Pemilik di atas terlihat memiliki
ketergantungan fungsional (functional dependency) terhadap primary key, kecuali
Nama_Pemilik yang masih memiliki ketergantungan fungsional (functional dependency)
terhadap No_Pemilik. Inilah contoh ketergantungan dari transitif (transitive dependency),
yang terjadi ketika atribut non-primary key (Nama_Pemilik) bergantung secara fungsi
terhadap satu atau lebih atribut non-primary key lainnya (No_Pemilik). Kita harus
menghilangkan ketergantungan transitif (transitive dependency) tersebut dengan menjadikan
relasi Property_Pemilik menjadi 2 relasi / tabel dengan format / bentuk sebagai berikut.

· Relasi / Tabel Property_Untuk_Pemilik yang terdiri dari atribut-atribut:

Alamat_Property, Biaya, No_PemilikNo_property

{No_property sebagai primary key}

· Dan relasi Pemilik yang terdiri dari atribut-atribut:

Nama_PemilikNo_Pemilik

{No_Pemilik sebagai primary key}

Hasil akhir normalisasi tabel Pelanggan_Biaya sampai ke bentuk normal ketiga adalah

sebagai berikut:
Seluruh atribut bukan kunci pada suatu relasi hanya memiliki ketergantungan fungsional
terhadap primary key di relasi itu saja.

Redundansi data adalah duplikasi data dalam beberapa file data sehingga data yang sama di simpan
di dalam lebih dari 1 lokasi. Redundansi data terjadi ketika kelompok yang berbeda dalam organisasi
mendapatkan data yang sama secara independen dan menyimpannya secara independen juga.

Redudansi, yaitu kejadian berulangnya data atau kumpulan data yang sama dalam
sebuah database yang mengakibatkan pemborosan media penyimpanan. Sebenarnya
redudansi sendiri adalah hal yang bisa diramalkan (predictable) atau konvensional
dalam pesan. Misalkan Jika saya berjumpa dengan seorang teman di jalan dan
berkata “Helo”, maka saya memiliki pesan yang sangat bisa diramalkan atau
redundan (Highly predictable, highly redundant). Kaitannya dengan pengertian
pertama ialah pesan tersebut memang sudah bisa terlamalkan dari awal kerena
pesan tersebut memang sering terpakai (berulang-ulang) akan tetapi memang pesan
tersebut penting disampaikan untuk memperbaiki komunikasi.

Normalisasi adalah proses pengelompokan atribut data yang membentuk entitas sederhana,
nonredundan, fleksibel, dan mudah beradaptasi, Sehingga dapat dipastikan bahwa database yang
dibuat berkualitas baik

Normalisasi merupakan teknik analisis data yang


mengorganisasikan atribut-atribut data dengan cara
mengelompokkan sehingga terbentuk entitas yang non-redundant,
stabil, dan fleksible

Normalisasi dilakukan sebagai uji coba pada suatu relasi


secara berkelanjutan untuk menentukan apakah relasi itu sudah
baik, yaitu dapat dilakukan proses insert,update,delete, dan
modifikasi pada satu atau beberapa atribut tanpa mempengaruhi
integritas data dalam relasi tersebut.
Normalisasi adalah proses pengelompokkan sekumpulan data
menjadi masing-masing kelompok yang sama dan menentukan
hubungan antara masing-masing kelompok.

Tujuan utama normalisasi:

 Mengurangi redudansi data.


 Perubahan data (penyisipan, pengubahan dan
penghapusan) terjadi hanya pada kelompok data
tersebut.
 Mencegah anomali pada data (keanehan pada proses
penyisipan, pengubahan dan penghapusan).
 Struktur data mudah dipahami dan dikembangkan.

Sebuah table dapat dikategorikan efisien atau normal, jika


telah memenuhi tiga kriteria yaitu:

1. Jika ada dekomposisi table dimana


dekomposisinya harus aman (lossless-join
decomposition), dekomposisi adalah proses
pemisahan suatu table menjadi dua atau lebih
table baru.
2. Terpeliharanya ketergantungan fungsional pada
saat perubahan data (dependency preservation).
3. Tidak melanggar Boyce-Codd Normal Form (BCNF)
atau paling tidak Bentuk Normal Ketiga (3NF).

Langkah-langkah dalam normalisasi:

Unformal Form (UF), bentuk ini merupakan data yang direkam,


tidak ada keharusan mengikuti suatu format tertentu dapat saja
tidak lengkap atau duplikasi. Data dikumpulkan sesuai dengan
kedatangannya.

First Normal Form (1NF), bentuk yang setiap atributnya adalah


atomik, tapi masih terdapat atribut yang muncul secara
berulang.
Second Normal Form (2NF), bentuk yang relasinya dalam bentuk
normal ke-satu (1NF), dan semua atribut bukan kunci hanya
tergantung pada kunci utama. Kunci utama (primary key) adalah
sebuah atribut yang dapat mengidentifikasikan suatu entitas
secara unik dan dapat mewakili setiap atribut dari entitas
maupun relasi yang bersangkutan. Pengertian semua atribut
bukan kunci bergantung fungsi penuh pada kunci utama adalah
bahwa setiap atribut bukan kunci suatu relasi, harus
berhubungan dengan satu nilai atribut kunci utamanya.

Third Normal Form (3NF), bentuk yang relasinya berada dalam


bentuk normal ke-dua dan setiap atribut yang bukan kunci
bergantung transitif pada kunci utama atau bentuk normal ke-
tiga adalah relasi dalam normal ke-dua dan dihilangkan
ketergantungan transitifnya. Dengan kata lain setiap atribut
bukanlah kunci dan teruslah bergantung hanya pada kunci
utamanya secara menyeluruh.
Langkah-langkah Troubleshooting Komputer tidak mau Menyala
17 Juni 2013/Riki Anggun Gumala

Mendeteksi Kerusakan pada Memori Komputer beserta Solusinya


POST (Power on Self-Test) yaitu test yang dilakukan oleh PC untuk mengecek fungsi-fungsi
komponen pendukung PC apakah bekerja dengan baik. POST dilakukan PC pada saat
booting, jika PC mengalami suatu masalah maka akan dapat terdeteksi gejala kesalahannnya
melalui POST, PC akan memberikan pesan/peringatan kesalahan dalam bentuk suara yang
dihasilkan melalui speaker atau tampilan visual di monitor. Selain itu pesan/peringatan
kesalahan juga dapat dideteksi melalui kinerja dari PC, misalkan PC tidak hidup walaupun
sumber listrik AC sudah terhubung dan tombol power sudah ditekan.

POST memungkinkan user dapat mendeteksi, mengisolasi, menentukan, dan menemukan


kesalahan sehingga dapat memperbaiki penyimpangan atau kerusakan yang terjadi pada PC.
Mekanisme POST disediakan oleh semua produk PC atau motherboard dan tersimpan di
dalam ROM atau flash ROM BIOS. Secara umum proses dan prosedur yang dilakukan dalam
POST pada semua produk motherboard sama. Terdapat beberapa perbedaan yang menjadikan
ciri dari produk motherboard tertentu, tetapi pada dasarnya tetap sama.

1) Prosedur POST (Power on Self-Test)

POST dilakukan sesaat setelah komputer dihidupkan dan mulai booting, proses ini dilakukan
oleh BIOS. Adapun urutan prosedur POST adalah sebagai berikut :

1. Test Power Supply ditandai dengan lampu power hidup dan kipas pendingin power supply
berputar.
2. Secara otomatis dilakukan reset terhadap kerja CPU oleh sinyal power good yang dihasilkan
oleh power supply jika dalam kondisi baik pada saat dihidupkan, kemudian CPU mulai
melaksanakan instruksi awal pada ROM BIOS dan selanjutnya.
3. Pengecekkan terhadap BIOS dan isinya. BIOS harus dapat dibaca. Instruksi awal ROM BIOS
adalah jump (lompat) ke alamat program POST.
4. Pengecekkan terhadap CMOS, CMOS harus dapat bekerja dengan baik. Program POST
diawali dengan membaca data setup (seting hardware awal) pada RAM CMOS setup, sebagai
data acuan untuk pengecekan.
5. Melakukan pengecekkan CPU, timer (pewaktuan), kendali memori akses langsung, memory
bus dan memory module.
6. Memori sebesar 16 KB harus tersedia dan dapat dibaca/ditulis untuk keperluan ROM BIOS
dan menyimpan kode POST.
7. Pengecekkan I/O controller dan bus controller. Controller tersebut harus dapat bekerja
untuk mengontrol proses read/write data. Termasuk I/O untuk VGA card yang terhubung
dengan monitor. Jika ada salah satu prosedur POST yang tidak berhasil dilewati maka PC
akan menerima pesan/peringatan kesalahan dari POST. Pesan/peringatan kesalahan berupa
kode beep yang dikeluarkan melalui speaker yang terhubung dengan motherboard atau
tampilan di layar monitor sesuai dengan standar masing-masing motherboard.

2) Pesan/Peringatan Kesalahan POST (Power on Self-Test)

Pesan/peringatan kesalahan hasil POST berupa tampilan performance PC, visual di monitor
dan beep dari speaker. Sesuai dengan urutan prosedur POST yang dilakukan oleh BIOS maka
gejala-gejala permasalahan yang muncul adalah sebagai berikut:

1. CPU dan Monitor mati, tidak ada beep = Instalasi fisik ke tegangan listrik AC 110/220V Power
supply
2. CPU hidup, Monitor Mati, Tidak ada beep = Instalasi kabel data dari VGA card ke Monitor.
3. CPU hidup, Monitor Mati, ada beep = Disesuaikan dengan beep

Prosedur test POST yang telah dilakukan untuk memastikan bahwa unit power supply dan
monitor bekerja dengan baik. Jika tahap ini dapat dilewati maka bios mulai meneruskan
POST selanjutnya. Adapun hasil dari POST selanjutnya ditunjukkan dengan kode beep
apabila ditemukan permasalahan. Bunyi kode beep yang ditunjukkan sesuai dengan BIOS
yang digunakan.

Kode Beep AWARD BIOS

No. Bunyi Beep Keterangan


1 1 beep pendek PC dalam keadaan baik

2 1 beep panjang Problem di memori

3 1 beep panjang 2 beep Kerusakan di modul DRAM parity


pendek

4 1 beep panjang 3 beep Kerusakan di bagian VGA


pendek

5 Beep terus menerus Kerusakan di modul memori atau memori video

Kode Beep AMI BIOS

No. Bunyi Beep Keterangan


1 beep pendek DRAM gagal merefresh, Sirkuit gagal mengecek
keseimbangan DRAM Parity (sistem memori)

2 3 beep pendek BIOS gagal mengakses memori 64 Kb pertama.


3 4 beep pendek Timer pada sistem gagal bekerja

4 5 beep pendek Motherboard tidak dapat menjalankan prosessor

5 6 beep pendek Controller pada keyboard tidak dapat berjalan dengan baik

6 7 beep pendek Video Mode error

7 8 beep pendek Tes memori VGA gagal

8 9 beep pendek Checksum error ROM BIOS bermasalah

9 10 beep pendek CMOS shutdown read/write mengalami errror

10 11 beep pendek Chache memori error

11 1 beep panjang 3 beep Conventional/Extended memori rusak


pendek

12 1 beep panjang 8 beep Tes tampilan gambar gagal


pendek

Kode Beep IBM BIOS

No. Bunyi Beep Keterangan


1 Tidak ada beep Power supply rusak, card monitor/RAM tidak terpasang

2 1 beep pendek Normal POST dan PC dalam keadaan baik

3 beep terus menerus Power supply rusak, card monitor/RAM tidak terpasang

4 Beep pendek berulangulang Power supply rusak, card monitor/RAM tidak terpasang

5 1 beep panjang 1 beep Masalah Motherboard


pendek

6 1 beep panjang 2 beep Masalah bagian VGA Card (mono)


pendek

7 1 beep panjang 3 beep Masalah bagian VGA card (EGA).


pendek

8 3 beep panjang Keyboard error

9 1 beep, blank monitor Masalah pada VGA card sirkuit

Pada PC tertentu menggunakan tone yang pada prinsipnya sama dengan beep untuk
memberikan pesan/peringatan kesalahan dalam bentuk suara.
Jika terdapat Troubleshoot pada Memory, maka langkah-langkah yang harus anda lakukan
adalah :

1. Lepaskan Memory dari slot Motherboard dengan cara renggangkan pengunci slot memory,
kemudian tarik dengan benar (jangan sentuh kuningannya).

2. Bersihkan pin-pin memory menggunakan karet penghapus yang bersih, kemungkinan pin-
pin tersebut kotor oleh debu atau korosi.

3. Pasang kembali ke slot memory motherboard dengan baik dan benar.

Kardinalitas/Derajat Relasi (BASIS DATA)

Kardinalitas/ Derajat Relasi


Yaitu menunjukan jumlah maksimum entitas yang dapat berelasi dengan entitas pada
himpunan entitas yang lain. Kardinalitas relasi merujuk kepada hubungan maksimum yang
terjadi dari himpunan entitas yang satu ke himpunan entitas yangn lain dan begitu juga
sebaliknya. Kardinalitas relasi yang terjadi diantara dua himpunan entitas dapat berupa :

 Satu ke satu (one to one), berarti setiap entitas pada himpunan entitas A berhubungan
paling banyak dengan satu entitas pada himpunan entitas B dan begitu juga
sebaliknya. MHS dengan KTM
 Satu Ke banyak (one to Many), Berarti setiap entitas pada himpunan entitas A dapat
berhubungan dengan banyak entitas pada himpunan entitas B, tetapi tidak sebaliknya.
Contoh : MHS dengan MTK
 Banyak ke satu ( Many to One), berarti setiap entitas pada himpunan entitas A
berhubungan dengan paling banyak satu entitas pada himpunan entitas B, tetapi tidak
sebaliknya. Contoh : MTK dengan DOSEN
 Banyak to banyak (Many to Many), berarti setiap entitas pada himpunan entitas A
dapat berhubungan dengan banyak entitas pada himpunan entitas B dan demikian juga
sebaliknya. Contoh : PRODUK dengan KONSUMEN.

DIAGRAM ENTITY RELATIONSHIP ( ERD )


Model ERD berisi komponen-komponen himpunan entitas dan himpunan relasi yang masing-
masing dilengkapi dengan atribut-atribut yang mempresntasikan seluruh fakta.
Notasi atau symbol yang sering digunakan adalah :

1. Relasi one to one (ERD 1 to 1 ), contoh :

2. Relasi one to Many (ERD 1 to M) contoh :


3. Relasi Many to Many (ERD M to M), contoh :

TAHAPAN PEMBUATAN ERD:


1. Tahap pembuatan diagram E-R awal (preliminary Design) yaitu :

 Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan terlibat


 Menentukan atribut-atribut key dari masing-masing himpunan entitas.
 Mengidentifikasi dan menetapkan seluruh himpunan relasi diantara himpunan entitas
yang ada beserta foreign key.
 Menentukan derajat/kardinalitas relasi untuk setiap himpunan relasi.
 Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut.

contoh:
2. Tahap optimasi diagram E-R (final design)
3. ERD dengan Data Dictionary (kamus data)
Kamus data berisi daftar atribut yang diapit kurung kurawal { dan } . Atribut yang berfungsi
sebagai key juga dibedakan dengan yang bukan key dengan mengaris bawahi atribut tersebut.

KAMUS DATA:
MHS = { NOBP, NM_MHS, AL-MHS, TG-LHR}
KULIAH = { KD-KL, KD_KL, SKS, SEM}
DOSEN = { NIP, NM_DS, AL _DS}
STUDY = {NOBP, KD-KL, Nl_HRF}
TEACH = {KD-KL, NIP, WAKTU, GED}

Kardinalitas Entitas
Kardinalitas Entitas adalah penentuan berapa banyak relasi suatu entitas antara entitas satu
dengan yang lainnya.
kardinalitas hanya didefinisikan 3 macam:
0 - tidak ada
1 - satu
n - banyak
untuk menentukan banyaknya sesuai 3 macam di atas harus disesuaikan dengan aturan
bisnis/organisasi/system yang ada atau biasa disebut SOP(Standart Operating Procedure)
Misalkan menentukan kardinalitas pada sistem penilaian belajar yang di dalamnya terdapat
entitas siswa dan matapelajaran. Kita bisa menggunakan pertanyaan:
- bolehkah siswa mengambil pelajaran tertentu?
- matapelajaran manakah yang boleh di ambil atau tidak diambil?
- adakah kuota jumlah siswa pada mata pelajaran tertentu?
tentu pertanyaan diatas mempunyai jawaban yang berbeda-beda baik dimasing-masing
sekolah maupun dimasing-masing universitas.

Kardinalitas Atribut
Kardinalitas pada atribut adalah representasi dari jumlah entitas dalam bentuk alur data(data
flow) yang didefinisikan melalui DFD(Data Flow Diagram).
Melalui kardinalitas dapat diketahui bahwa setiap atribut mempunyai minimum kardinalitas
yaitu 0 atau 1 dan maksimum kardinalitas yaitu 1 atau banyak.

Minimum:
0 Atribut tersebut adalah optional, boleh ada boleh tidak
1 atribut tersebut harus ada (Not Null)
Maksimum:
1 atribut Normal
N atribut tersebut melakukan pengulangan (repeating), sehingga proses normalisasi dapat
segera dilakukan.

Contoh studi kasus ERD dan kardinalitas entitas:


jika aturan sekolah mempunyai aturan sebagai berikut :
- suatu matapelajaran harus di ajar minimal 1 pengajar dan maximal banyak pengajar
- seorang pengajar tidak boleh mengajar lebih dari satu pelajaran.
maka hubungan kardinalitas entitasnya sebagai berikut:
one to many = 1:n
karena 1 entitas matapelajaran bisa di ajarkan minimum 1 guru dan maximum n entitas guru,
namun sebaliknya 1 entitas guru minimum bisa mengajar 1 entitas matapelajaran dan
maximum hanya 1 matapelajaran.

 Pengertian ERD

Entity Relationship Diagram (ERD) adalah sebuah konsep yang mendeskripsikan hubungan
antara penyimpanan dan didasarkan pada persepsi dari sebuah dunia nyata yang terdiri dari
sekumpulan objek, disebut entiti & relasi diantar objek-objek tersebut. Atau juga bisa disebut
suatu model jaringan (network) yang menggunakan susunan data yang disimpan dari sistem
secara abstrak.

 Simbol ERD
 Kardinalitas ERD

o Satu ke satu (one to one), Setiap anggota entitas A hanya boleh berhubungan
dengan satu anggota entitas B, begitu pula sebaliknya.

o Satu ke banyak (one to many), Setiap anggota entitas A dapat berhubungan


dengan lebih dari satu anggota entitas B tetapi tidak sebaliknya.

o Banyak ke banyak (many to many), Setiap entitas A dapat berhubungan


dengan banyak entitas himpunan entitas B dan demikian pula sebaliknya.

 Tahapan ERD
Linux merupakan sistem operasi yang basenya menyerupai unix. Keunikan dari
sistem operasi linux sendiri adalah karena sourcenya dapat kita manipulasi sesuai kengingin
kita sendiri dengan cara memanipulasi dan mengedit directory serta isinya yang ada pada
sistem.
Berikut peranan masing-masing dari hirarki file system yang ada pada operating system
Linux:
1. / ( di baca root ) : merupakan induk dari susunan direktori di linux dan merupakan tempat
dimana semua direktori berada.
2. /bin/ : directory ini berisi progam perintah esensial yang dibutuhkan oleh semua user.
progam-progam disini dapat dijalankan, meskipun tidak ada sistem file lain yang di mount.
directory ini tidak memiliki subdirectory.ini perintah-perintah yang harus ada di directory
/bin cat, chgrp, chmod, chown, cp, date, dd, df, dmesg, echo, false, hostname, kill, ln, login,
ls, mkdir, mknod, more, mount, mv, ps, pwd, rm, rmdir, sed, sh, stty, su, sync, true, unmount,
uname.
3. /boot/ : merupakan direktori yang berfungsi untuk menyimpan konfigurasi dan file-file
yang berhubungan dengan proses booting, memuat Linux Kernel dan file lain yang
diperlukan LILO dan GRUB boot manager.
4. /dev/ : merupakan direktori yang berfungsi untuk menyimpan konfigurasi device atau
hardware dari sistem, seperti harddisk (hda, sda), terminal (tty) etc.
5. /etc/ : merupakan direktori yang berfungsi untuk menyimpan skrip installation pada
/etc/rc.d sub direktori dan file-file konfigurasi dari sistem, misalkan konfigurasi service,
penjadwalan etc.
6. /root/ (root directory) : adalah struktur paling dasar yang harus bisa melakukan boot,
perbaikan atau mengembalikan sistem seperti dalam keadaan semula. Dalam struktur paling
atas ini harus dibuat sesederhana mungkin dan sebagai direktori home untuk user root
aksesnya tak terbatas
7. /lib/ : merupakan direktori yang berfungsi untuk menyimpan library dasar dari system
termasuk modul driver yang dapat diisi pada sistem boot.
8. /media/ : direktori yang berfungsi untuk mounting removable media seperi drive CD-
ROM, floopy disk etc.
9. /opt/ : merupakan direktori yang berfungsi untuk menyimpan aplikasi tambahan diluar
aplikasi bawaan dari linux.
10. /proc/ : merupakan direktori yang berfungsi untuk menyimpan informasi proses sistem
dan kernal dari sistem operasi, mencakupi informasi mengenai berbagai aspek sistem Linux.
11. /sbin/ : merupakan direktori yang berfungsi untuk menyimpan aplikasi dasar dari linux
yang dijalankan oleh super user (root) misalnya mount, shutdown, umount.
12. /sys/ : direktori special yang memuatkan informasi mengenai hard disk seperti yang
dilihat melalui Linux.
13. /usr/ : merupakan direktori untuk menyimpan aplikasi yang diinstall oleh user, misalkan
OpenOffice, Kate , chrome dan sebagainya.
14. /var/ : merupakan direktori untuk menyimpan informasi pencatatan log sistem, web
server, mailbox dan data-data aplikasi
15. /tmp/ : berisi file-file sementara yang dibutuhkan sebuah aplikasi yang sedang berjalan
Kirimkan Ini lewat EmailBlogThis!Berbagi ke TwitterBerbagi ke Facebook

File Sistem Linux

Seperti halnya DOS dan Windows sistem file pada linux tersusun atas direktori-direktori lain
yang tersusun secara hirarki dari dengan direktori utamanya ‘/’ atau dikenal dengan “root
directory“, dan di bawahnya terdapat lagi direktori yang merupakan tempat penyimpanan
konfigurasi-konfigurasi sistem yang ada pada linux

/bin

Merupakan kependekan dari “binaries“, atau executables, dimana banyak terdapat


program-program sistem yang esensial. Gunakan ls –F /bin untuk melihat file-filenya.
Jika anda melihat daftar file-nya, anda akan melihat beberapa commands yang telah
anda kenal, seperti cp, ls, dan mv. Ketika anda menggunakan perintah cp, maka anda
berarti menjalankan program /bin/cp. Dengan menggunakan ls –F , anda akan melihat
bahwa sebagian besar (tidak semuanya) dari file-file di /bin memiliki tanda (“*”). Ini
menandakan file tersebut dapat dieksekusi.

/dev

File-file di /dev merupakan file-file device, file-file tersebut mengakses system devices
dan resources (sumber daya) seperti disk drive, modems, dan memory. Misalnya, untuk
membaca input dari mouse maka dilakukan dengan mengakses /dev/mouse. Nama file
yang diawali dengan fd adalah floppy disk devices. fd0 adalah floppy disk drive
pertama, dan fd1 merupakan yang kedua.

Beberapa file device yang umum

Device Kegunaannya:

Mengacu pada system’s console—yaitu


/dev/console monitor yang terkoneksi secara langsung
ke sistem anda.

untuk mengakses port serial.

/dev/ttys0 mengacu ke “COM1” seperti


/dev/ttys dan /dev/cua pada MS-DOS.

/dev/cua merupakan “callout” devices”


dan digunakan dengan modem.

Akses ke harddisk. /dev/hda mengacu


kepada seluruh harddisk pertama,
/dev/hd[…]
sedangkan /dev/hda1 mengacu pada
partisi pertama dari /dev/hda.

merupakan drive SCSI. Tape SCSI


/dev/sd[…] diakses lewat device st, dan CD-ROM
SCSI melalui device sr.

Mengakses port paralel. /dev/lp0 sama


/dev/lp[…]
dengan “LPT1” pada MS-DOS.

Sebagai “black hole”—data dikirim pada


device ini akan hilang selamanya.
/dev/null
Mengapa ini berguna? Jika anda ingin
menyembunyikan output dari perintah
yang terlihat pada layar anda, maka anda
dapat mengirimkannya ke /dev/null.

Mengacu pada virtual console pada


sistem anda. (Diakses dengan menekan
Alt-F1, Alt-F2, dan seterusnya biasanya
/dev/tty[…]
sampai Alt-F7 tergantung setting system
anda). /dev/tty1 mengacu pada VC
pertama anda.

Pseudo-terminal, digunakan untuk


menyediakan suatu terminal ketika sesi
/dev/pty[…] login jarak jauh. Misal, ketika terhubung
ke sistem lain dengan menggunakan
telnet.

/etc

Berisi sejumlah file konfigurasi sistem., seperti /etc/rc (script inisialisasi sistem)

/sbin

Berisi binary-binary sistem yang esensial dimana digunakan untuk administrasi sistem.

/home

Berisi direktori rumah dari para pengguna sistem. Sebagai contoh /home/amikom
merupakan home directory dari user “amikom”.

/lib

Berisi shared library images, merupakan file-file yang berisi kode dimana banyak
program-program menggunakannya secara umum.

/proc

/proc mendukung “virtual file system“, dimana file-file disimpan pada memori, tidak
pada disk. File-file ini mengacu pada berbagai proses yang jalan pada sistem, sehingga
dapat memberikan anda informasi tentang program-program dan proses-proses yang
berjalan pada saat tertentu.

/tmp

Banyak program menyimpan informasi sementara di sini.

/usr

/usr merupakan direktori yang sangat penting dimana berisi sub-direktori yang berisi
beberapa dari program-program dan konfigurasi file-file yang digunakan pada sistem
yang paling penting. Isinya antara lain:

Direktori Kegunaannya:

berisi X Window System, jika anda


menginstallnya. X Windows merupakan sistem
/usr/X11R6
GUI (Graphical User Interface) pada sistem
Linux.

adalah tempat software yang nyata pada sistem


Linux, berisi sebagian besar dari executable
/usr/bin
file bagi program yang tidak ditemukan pada
tempat lain seperti /bin.

berisi berbagai file-file dan utilitas yang pada


/usr/etc
umumnya tidak esensial terhadap sistem.

berisi include files bagi kompiler C. File-file


ini (sebagian besar diakhiri dengan .h, untuk
header) mendeklarasikan nama-nama struktur
data, subroutine, dan konstan yang digunakan
ketika menulis program pada bahasa C.
/usr/include
File-file pada /usr/include/sys pada umumnya
digunakan ketika memprogram pada level
sistem UNIX. Jika anda familier dengan
bahasa pemrograman C, di sini anda akan
menemukan file header seperti stdio.h, dimana
mendeklarasikan fungsi-fungsi seperti printf().

/usr/g++-include Berisi file-file bagi kompiler C++

Berisi library “stub” dan “static” ekuivalen


/usr/lib
dengan file-file pada /lib.

/usr/local Berisi berbagai progam dan file yang tidak


esensial bagi sistem (hampir seperti /usr).
Hanya saja program tersebut lebih ke sistem.

/usr/man Direktori ini berisi halaman manual.

Berisi source code. Direktori paling penting


/usr/src disini adalah /usr/src/linux yang berisi source
code bagi kernel linux.

/var

Berisi direktori yang sering berubah ukurannya. Misal basis data.

Direktori Kegunaannya:

berisi berbagai file untuk administrasi sistem,


/var/log terutama system logs, dimana mencatat error
atau masalah pada sistem.

Berisi file-file yang “spooled” ke program


yang lain. Contoh, jika mesin terkoneksi ke
/var/spool suatu network, mail yang datang disimpan
pada /var/spool/mail sampai dibacanya atau
dihapusnya.

Apa itu Session Pada PHP

Dalam PHP, session merupakan data yang disimpan dalam suatu server yang dapat
digunakan secara global di server tersebut, dimana data tersebut spesifik merujuk ke
user/client tertentu, contoh penggunaan session adalah ketika user telah login di halaman
tertentu, maka ketika membuka halaman lain, php akan mengingat bahwa user tersebut telah
login, contoh ketika kita telah login pada Google, maka setiap kali kita membuka layanan
Google seperti GMail, Google Drive, dll di tab berbeda, kita akan selalu dalam keadaan
login, kecuali kita buka dengan browser yang berbeda. Cntoh lain ketika web ecommerce
merekam keranjang belanja user, maka ketika pindah ke halaman pembayaran, daftar belanja
masih terekam.

I. Cara Kerja Session Pada PHP

Ketika kita memulai session dengan menjalankan perintah session_start() maka PHP
akan menjalankan perintah baik pada server maupun pada client/user.

Sisi Server
Dari sisi server php akan membuat file yang kita sebut file session yang diawali dengan
sess_ dan diikuti dengan ID session, dimana ID Session tersebut mereferensikan id session
yang ada di browser client. nilai ID session adalah:

 Jika browser mengijinkan penggunaan cookie, maka ID session berupa angka acak
sebanya 26 karakter hexadesimal, contoh: 1g7vcm79tg4869tp8u53gldl02
 Jika browser tidak mengijinkan penggunaan cookie
Jika nama session ada di url, maka nilai ID Session sama dengan id yang ada di url,
misal http://jagowebdev.com?page=login&PHPSESSID=1234, maka ID Session yang
digunakan adalah 1234, sehingga nama file session yang dibuat sess_1234,
Namun jika ID Session tidak ada di URL, maka PHP akan membuat file dengan ID
Session sama seperti sebelumnya yaitu 26 karakter hexadesimal, file ini akan
dibuat setiap kali perintah session_start() dijalankan, dan tidak ada referensi ke
user/client.

Terus dimana php menyimpan file session tersebut? file tersebut secara default disimpan
didalam direktori temporary dimana letak direktory ini tergantung dari masing-masing sistem
opersi yang digunakan. untuk mengetahui dimana php menyimpan file session, dapat
menggunakan perintah: session_save_path() Misal kita buat file session.php dan simpan
ke dalam htdocs/tutorial, selanjutnya tuliskan kode berikut:

<?php echo session_save_path(); ?>

Ketika kita jalankan file tersebut di komputer yang menggunakan sistem operasi windows,
contoh output yang dihasilkan adalah E:\xampp-1.8.3.2\tmp (komputer saya), jika kita
buka direktori tersebut, disana kita temukan banyak file .tmp, cari nama dengan awalan sess_
, file tersebut merupakan file session.

Gambar 1. Contoh File Session

Sisi User/Client

Selanjutnya dari sisi client/user, php akan:

 Jika browser mengijinkan penggunaan cookie


Membuat file cookie dengan nama default yaitu PHPSESSID dengan nilai (value) ID
session, lokasi penyimpanan file tersebut berbeda beda tergantung jenis browser yang
digunakan, untuk google chrome lokasi cookie berada di:C:\Users\<NAMA
USER>\AppData\Local\Google\Chrome\User Data\Default dengan nama file Cookie,
namun kita tidak dapat membukanya secara langsung, melainkan harus menggunakan
SQLite, kita dapat membaca isinya melalui Chrome Developer Tools, yaitu pada
tab Resources bagian Cookies, contoh seperti gambar berikut:

Gambar 2. Cookie PHPSESSID

Jika kita bandingkan antara gambar 1 dan 2 terdapat kesamaan nilai


yaitu 1g7vcm79tg4869tp8u53gldl02 yang merupakan ID Session, dengan ID ini,
maka setiap kali user mengunjungi situs yang sama dan dengan browser yang sama,
maka server akan selalu menggunakan data-data yang ada di
file sess_1g7vcm79tg4869tp8u53gldl02.

 Jika browser tidak mengijinkan penggunaan cookie


Jika nama session berada di url, maka PHP akan membuat referensi ID Session sesuai
dengan yang ada di URL.
Misal: http://jagowebdev.com?page=login&PHPSESSID=1234, maka php akan
menggunakan data session pada file session sess_1234 . Jika ID session tidak ada di
URL maka data session hanya dapat digunakan di halaman tersebut saja.

Isi File Session Pada PHP


Isi file session pada PHP berupa array yang di serialize nilainya akan berubah ubah sesuai
dengan manipulasi data yang kita lakukan, misal file session.php kita ubah menjadi:

<?php
echo session_save_path();
session_start();
$_SESSION['user'] = 'agusph';
$_SESSION['auth'] = 1;

ketika kita jalankan PHP akan menyimpan data session dengan key dan value sesuai dengan
yang kita tentukan, jika kita buka file session tadi menggunakan notepad, maka akan berisi
user|s:6:"agusph";auth|b:1;, format: nama key diikuti tanda | kemudian data yang di
serialize (tipe data : panjang data(jika ada) : nilai data) dengan tanda pemisah antara data satu
dengan yang lain menggunakan titik koma. contoh diatas berarti bahwa s merupakan tipe
data string, 6 panjang data, sedangkan b berarti tipe data boelan.

Session selesai

Ketika browser ditutup atau kita menjalankan perintah session_destroy() maka session
berakhir, jika kita menggunakan session_destroy() maka file session yang ada pada
server akan lansung terhapus, namun jika browser ditutup, file tersebut tidak langsung
dihapus, server akan menghapusnya pada periode tertentu, biasanya 30 menit. Ketika browser
ditutup, cookie session pada browser akan langsung terhapus, sehingga session tersebut tidak
dapat digunakan lagi kecuali jika kita mengetahui ID Session nya, maka data session tersebut
dapat digunakan kembali baik melalui url maupun cookie.

II. Mengawali/Menjalankan Session Pada PHP

Untuk mengawali menjalankan session, seperti pada tulisan diatas, kita gunakan perintah
session_start() yang akan memberitahu server bahwa kita akan menggunakan session,
selanjutnya server akan mengecek apakah pengunjung telah memiliki session ID:

1. jika ya, maka server akan mengambil data sesuai dengan ID session yang di minta
oleh browser (misal di file a.php kita telah menjalankan perintah session_start()
kemudian di file b.php kita jalankan lagi perintah session_start(), maka ketika
menjalankan file b.php browser akan mengirimkan ID Session, sehingga data session
yang terbentuk ketika menjalankan file a.php akan dipakai lagi ketika kita
menjalankan file b.php),
2. jika tidak, maka server akan membuat file session dengan nama sess_ID dan
mengirimkan id tersebut ke browser untuk dibuatkan cookie.

Karena penggunaan data session harus didahului dengan perintah session_start() maka
perintah ini sebaiknya ditulis di baris paling awal di program kita.

III. Menambahkan Data Session Pada PHP

Semua data session disimpan dalam bentuk array superglobal dengan nama $_SESSION,
sehingga seperti array pada umumnya setiap variabel session disimpan dalam hubungan key
dan value, untuk menambahkan data kedalamnya sama dengan ketika kita menambahkan data
di array biasa, namun bedanya variabel $_SESSION akan tetap dapat kita gunakan di file php
manapun (dalam satu server) hingga kita menakhirinya dengan perintah session_destroy()

Contoh untuk menambahkan data session:

<?php
session_start();
$_SESSION['user'] = 'agusph';
$_SESSION['role'] = 'admin';
$_SESSION['login_time'] = date('Y-m-d');
print_r($_SESSION);

/*
Output
Array
(
[user] => agusph
[role] => admin
[login_time] => 2015-09-05
)
*/

IV. Membaca Data Session Pada PHP

Setelah kita menyimpan data pada session, data tersebut langsung dapat kita gunakan, untuk
memanggil data session pada PHP, seperti kita memanggil data pada array pada umumnya,
yaitu dengan key nya, contoh:

<?php
$_SESSION['user'] = 'agusph';
echo $_SESSION['user']; // agusph
?>

Session yang telah kita isi datanya dapat langsung kita gunakan sehingga lebih banyak
keuntungannya dibanding menggunakan $_COOKIE.

V. Menghapus Data Session Pada PHP

Untuk menghapus data session pada php, sama seperti ketika kita menghapus variabel,
yaitu menggunakan perintah unset() contoh berikut menyambung contoh sebelumnya:

<?php
unset($_SESSION['user']);
print_r($_SESSION);

/*
Output
Array
(
[role] => admin
[login_time] => 2015-09-05
)
*/

disamping itu kit juga dapat menggunakan perintah session_unset() untuk menghapus
semua data pada $_SESSION, contoh:

<?php
session_start();
$_SESSION['user'] = 'agusph';
$_SESSION['role'] = 'Admin';
session_unset();
print_r($_SESSION);

/*
Output
Array ()
*/

perlu diperhatikan bahwa jika menggunakan perintah unset() untuk menghapus data
session, pilihlah data secara spesifik, jangan menghapus $_SESSION itu sendiri
(unset($_SESSION)), karena akan menghapus semua isi data session, dan menghapus
variabel $_SESSION itu sendiri, sehingga jika kita panggil akan memunculkan pesan error
bahwa variabel $_SESSION undefined. contoh:

<?php
session_start();
$_SESSION['user'] = 'agusph';
$_SESSION['role'] = 'admin';
$_SESSION['login_time'] = date('Y-m-d');
unset($_SESSION);
print_r($_SESSION);

// Notice: Undefined variable: _SESSION in E:\xampp-


1.8.3.2\htdocs\tutorial\session.php on line 7

VI. Mengakhiri Session Pada PHP

Untuk mengakhiri session pada PHP, kita gunakan perintah session_destroy(), dengan
perintah ini maka file session akan dihapus dari server. contohnya ketika user logout, maka
session akan berakhir dan user diminta untuk login kembali.

VII. Keamanan Session Pada PHP

Dari berbagai manfaat session terdapat beberapa kelemahan yang bisa menyebabkan kerugian
terutama pada user, yaitu bocornya data-data sensitif ke pihak yang tidak bertanggung jawab.
Untuk membahas mengenai keamanan session dan bagaimana mencegahnya, dapat dibaca
pada artike berikutnya.

Apakah itu SESSION ?

Session bisa diartikan dengan suatu informasi yang diambil saat kita melakukan pekerjaan terhadap
sesuatu. Seperti saat kita bekerja dengan sebuah aplikasi pada komputer, kita mulai dengan
membuka aplikasi lalu dilanjutkan dengan melakukan beberapa hal kemudian menyimpan pekerjaan
dan diakhiri dengan menutup aplikasi.

Dalam hal ini kita bisa mengambil informasi siapa yang menjalankan aplikasi, data apa yang dibuka
serta berapa lama waktu yang dibutuhkan dalam pekerjaan. Hal ini terasa simpel jika kita berlakukan
pada komputer lokal namun tidak demikian jika diterapkan pada Internet.

Di internet web server tidak tahu siapa pengguna yang mengakses web, serta apa yang dikerjakan
oleh pengguna tersebut. Hal ini membuat pemikiran untuk menciptakan variabel dinamis yang bisa
diakses oleh setiap halaman yang berisi informasi session dari pengguna internet pada suatu website
tertentu.

Data yang disimpan pada session bersifat sementara dan berlaku pada jangka waktu tertentu jika
diset. Session akan hilang jika waktu session berakhir, session dimusnahkan dan atau saat server
direstart. Jika ingin menyimpan variabel yang sifatnya permanen sebaiknya gunakan penyimpanan
dengan database.
Cara memulai Session PHP

Untuk memulai session digunakan fungsi session_start(). Penulisan fungsi session_start() harus
berada paling atas kode PHP aktif, dalam hal ini komentar tidak dihitung.

Contoh script memulai session pada PHP


<?php
// Memulai session
session_start();
?>

Cara menyimpan informasi pada Session PHP

Untuk menyimpan informasi pada session digunakan variabel super global $_SESSION dengan
menyertakan atribut nama session dan isi value-nya. Contoh penggunaan fungsi ini adalah untuk
menyimpan informasi pengguna jika berhasil login.

Cara penulisan saat menyimpan informasi pada Session PHP


$_SESSION["nama_session"]=value

Contoh script untuk menyimpan informasi pada Session PHP


<?php
// Memulai session
session_start();

// menyimpan informasi pada session


$_SESSION["user"] = "sabrina";
$_SESSION["warna"] = "merah";
$_SESSION["hewan"] = "kucing";
?>

Cara mengambil informasi dari variabel $_SESSION

Untuk mengambil informasi dari session, cukup dengan memanggil variabel $_SESSION beserta
atributnya.

Contoh script untuk mengambil informasi dari Session PHP


<?php session_start(); ?>
<html>
<body>
<?php

// Menampilkan informasi yang disimpan pada Session


echo "Warna baju saya " . $_SESSION["warna"] . ".<br>";
echo "Hewan peliharaan saya " . $_SESSION["hewan"] . ".";
?>
</body>
</html>

Cara mengubah informasi pada variabel Session

Untuk mengubah informasi dari variabel Session cukup dengan mengisinya dengan data baru seperti
saat menulis pertama kali.
Contoh script untuk mengubah informasi pada Session PHP
<?php
// Memulai session
session_start();

// mengubah informasi pada session


$_SESSION["warna"] = "hijau";
$_SESSION["hewan"] = "kelinci";
?>

Cara mengakhiri dan memusnahkan Session PHP

Untuk mengakhiri Session digunakan fungsi session_unset() dan untuk memusnahkan Session
digunakan fungsi session_destroy(). Fungsi session_unset() akan membuang semua variabel Session.
Biasanya fungsi ini dipakai saat pengguna melakukan logout terhadap sebuah aplikasi PHP.
Contoh script untuk mengakhiri dan memusnahkan Session PHP

<?php session_start(); ?>

<html>
<body>

<?php

// membuang semua variabel session


session_unset();

// memusnahkan session
session_destroy();
?>
</body>
</html>

1. session_cache_expire — Mengembalikan nilai cache expire saat ini.


2. session_cache_limiter — Mengambil atau mengatur pembatas cache (cache limiter) saat
ini.
3. session_commit — Nama lain dari session_write_close
4. session_decode — Memecah kode data session dari sebuah strting.
5. session_destroy — Menghancurkan semua data yang terdaftar dari sebuah session.
6. session_encode — Mengkodekan data session saat ini sebagai sebuah string.
7. session_get_cookie_params — Mengambil parameter cookie dari sebuah session.
8. session_id — Mengambil atau mengatur session id saat ini.
9. session_is_registered — Mengetahui apakah sebuah variabel telah terdaftar atau belum
dalam sebuah session.
10. session_module_name — Mengambil atau mengatur modul session saat ini.
11. session_name — Mengambil atau mengatur nama session saat ini.
12. session_regenerate_id — Memperbaharui id session saat ini dengan session id yang baru
diciptakan.
13. session_register — Mendaftarkan satu atau lebih variabel global pada session saat ini.
14. session_save_path — Mengambil atau mengatur save path dari session saat ini.
15. session_set_cookie_params — Mengatur parameter cookie dari session.
16. session_set_save_handler — Mengatur user-level dari fungsi penyimpanan session.
17. session_start — Menginisialisasi data dari session.
18. session_unregister — Merubah status sebuah variabel global dari session saat ini
menjadi tidak terdaftar.
19. session_unset — Membebaskan ( melepas ) semua variabel dari ssession.
20. session_write_close — Merekam data session dan mengakhiri session.

Ketika mendengar kata session jika dengan logika kita pasti berpikir SESSION itu Sesi,
Tidak salah, Session itu contohnya ketika kita berbelanja di toko online jika tidak
menggunakan session kita tidak akan bisa berbelanja banyak sekaligus,
Dari pernyataan diatas tentu pada postingan kali ini saya akan membahas SESSION,
Sebelumnya apa itu SESSION ?

SESSION suatu cara agar suatu variable dapat diakses dibanyak halaman

Apa Fungsi SESSION ?

SESSION digunakan untuk memberikan hak akses (contoh : Member, Admin dan User Biasa
)

Macam-Macam SESSION

ada banyak SESSION yang ada diantaranya :

 Session_Start() Untuk mengenali session


 Session_Register() Untuk meregister variabel session
 Session_Unregister() Untuk Unregister variabel Session
 Session Destroy() Untuk menghapus semua session yang sudah dibuat tadi
h Contoh coding untuk Session_start()

<?php
session_start();
?>

Sekian artikel ini, Semoga bermanfaat, Maaf agak acak acakan postinganya, ini dikarenakan
lama sudah tidak posting di blog ini :)