Sabtu, 21 Agustus 2010

Perkenalan PBO (Java)

I. Pengenalan Java
Java adalah suatu teknologi di dunia software komputer, yang merupakan
suatu bahasa pemrograman tingkat tinggi Java mudah dipelajari, terutama bagi
programmer yang telah mengenal C/C++, Java juga merupakan bahasa
pemrograman berorientasi objek dan dirancang agar dapat dijalankan di
semua platform.
II. Jenis – Jenis Java
- Enterprise Java (J2EE)
Dipergunakan untuk aplikasi berbasis web, aplikasi sistem tersebar
dengan beraneka ragam klien dengan kompleksitas yang tinggi.
- Standar Java (J2SE)
Dipergunakan untuk aplikasi berbasis desktop dan inilah yang biasa dikenal
sebagai bahasa Java.
- Micro Java (J2ME)
Merupakan subset dari J2SE dan salah satu aplikasinya yang banyak
dipakai adalah untuk wireless device / mobile device.

Perkenalan PBO (Java)
I. Pengenalan Java
Java adalah suatu teknologi di dunia software komputer, yang merupakan
suatu bahasa pemrograman tingkat tinggi Java mudah dipelajari, terutama bagi
programmer yang telah mengenal C/C++, Java juga merupakan bahasa
pemrograman berorientasi objek dan dirancang agar dapat dijalankan di
semua platform.
II. Jenis – Jenis Java
- Enterprise Java (J2EE)
Dipergunakan untuk aplikasi berbasis web, aplikasi sistem tersebar
dengan beraneka ragam klien dengan kompleksitas yang tinggi.
- Standar Java (J2SE)
Dipergunakan untuk aplikasi berbasis desktop dan inilah yang biasa dikenal
sebagai bahasa Java.
- Micro Java (J2ME)
Merupakan subset dari J2SE dan salah satu aplikasinya yang banyak
dipakai adalah untuk wireless device / mobile device.
III. Fitur - Fitur Java
a) Applet
Program Java yang dapat berjalan di atas browser, yang dapat
membuat halaman HTML lebih dinamis dan menarik.
b) Java Networking
Sekumpulan API (Application Programming Interface) yang
menyediakan fungsi – fungsi untuk aplikasi – aplikasi jaringan, seperti
penyediaan akses untuk TCP, UDP, IP Adrress dan URL. Tetapi Java
Networking tidak menyediakan akses untuk ICMP dikarenakan alasan
sekuriti dan pada kondidi umum hanya administrator ( root ) yang bisa
memanfaatkan protokol ICMP.
c) Java Database Connectivity (JDBC)
JDBC menyediakan sekumpulan API yang dapat digunakan untuk
mengakses database seperti Oracle, MySQL, PostgreSQL, Microsoft
SQL Server.
d) Java Security
Java Security menyediakan sekumpulan API untuk mengatur security
dari aplikasi Java baik secara high level atau low level, seperti
public/private key management dan certificates.
e) Java Swing
Java Swing menyediakan sekumpulan API untuk membangun aplikasi
– aplikasi GUI (Graphical User Interface) dan model GUI yang diinginkan
bisa bermacam – macam, bisa model Java, model Motif/CDE atau model
yang dependent terhadap platform yang digunakan.
f) Java RMI
Java RMI menyediakan sekumpulan API untuk membangun aplikasi –
aplikasi Java yang mirip dengan model RPC (Remote Procedure Call) jadi
object - object Java bisa di call secara remote pada jaringan komputer.
g) Java 2D/3D
Java 2D/3D menyediakan sekumpulan API untuk membangun grafik –
grafik 2D/3D yang menarik dan juga akses ke printer.
h) Java Server Pages
Berkembang dari Java Servlet yang digunakan untuk menggantikan
aplikasi – aplikasi CGI, JSP (Java Server Pages) yang mirip ASP dan PHP
merupakan alternatif terbaik untuk solusi aplikasi Internet.
i) JNI (Java Native Interface)
JNI menyediakan sekumpulan API yang digunakan untuk mengakses
fungsi – fungsi pada library (*.dll atau *.so) yang dibuat dengan
bahasa pemrograman yang lain seperti C,C++, dan Basic.
j) Java Sound
Java Sound menyediakan sekumpulan API untuk manipulasi sound.
k) Java IDL + CORBA
Java IDL (Interface Definition Language) menyediakan dukungan Java
untuk implementasi CORBA (Common Object Request Broker) yang
merupakan model distributed-Object untuk solusi aplikasi besar di
dunia networking.
l) Java Card
Java Card utamanya digunakan untuk aplikasi – aplikasi pada smart
card, yang sederhana wujudnya seperti SIM Card pada handphone.
m) JTAPI (Java Telephony API)
Java Telepony API menyediakan sekumpulan API untuk
memanfaatkan devices – devices telepony, sehingga akan cocok untuk
aplikasi – aplikasi CTI (Computer Telephony Integration) yang
dibutuhkan seperti ACD (Automatic Call Distribution), PC-PBX dan
lainnya.
IV. Metode Compiler Java
Bahasa Lain (misalnya
Java di Windows C/C++) di Windows
Source code
(coba.java)
Source code
(coba.cpp)
Bytcode
(coba.class)
Binary
(coba.exe)
Compile
(javac coba.java)
Compile
(cpp coba.cpp)
Java
Interpreter
(java.exe)
Windows
Platform
Java
Interpreter
(java)
UNIX
Platform
Windows
Platform
UNIX
Platform
Binary
incompatibility

V. OOP Java
Pemrograman berorientasi objek diciptakan untuk mempermudah
pengembangan program dengan cara mengikuti model yang telah ada dalam
kehidupan nyata. Dalam paradigma ini, sesuai dengan model kehidupan nyata,
segala bagian (entiti) dari suatu permasalahan adalah objek. Objek-objek ini
kemudian juga dapat berupa gabungan dari beberapa objek yang lebih kecil.
Sebagai contoh, tengoklah sebuah mobil. Mobil adalah sebuah objek dalam
kehidupan nyata. Namun mobil sendiri terbentuk dari beberapa objek yang lebih
kecil seperti roda ban, mesin, jok, dll. Mobil sebagai objek yang merupakan
gabungan dari objek yang lebih kecil dibentuk dengan membentuk hubungan
antara objek-objek penyusunnya. Begitu juga dengan sebuah program. Objek
besar dapat dibentuk dengan menggabungkan beberapa objek-objek dalam
bahasa pemrograman. Objek-objek tersebut berkomunikasi dengan saling
mengirim pesan kepada objek lain.
a) Objek
Baik dalam dunia nyata atau dalam sebuah program, sebuah objek
memiliki dua karakteristik, yaitu :
1. State adalah keadaan dari sebuah objek, seperti mobil memiliki state
warna, model, tahun pembuatan, kondisi, dll
2. Behaviour adalah kelakuan dari objek tersebut, seperti mobil dapat
melaju, membelok, membunyikan klakson, dll.
Objek menyimpan statenya dalam satu atau lebih variabel, dan
mengimplementasikan behaviournya dengan metode. Dengan penjelasan
di atas, dapat disimpulkan bahwa objek adalah bagian software yang
dibentuk dengan variabel-variabel dan metode-metode yang berhubungan
dengan variabel tersebut.
Dengan karakteristik tersebut, kita dapat memodelkan berbagai objek
dalam kehidupan nyata ke dalam objek-objek dalam sebuah program.
Lebih lanjut kita dapat memodelkan objek-objek abstrak ke dalam sebuah
program. Contoh umum untuk konsep abstrak seperti ini adalah objek
Event, yaitu objek untuk mewakili peristiwa klik atau tombol ditekan.

b) Message (Pesan)
Objek-objek yang bekerja sama membentuk suatu sistem harus saling
berkomunikasi untuk menjalankan sistem tersebut. Dalam sebuah
program, objek-objek berkomunikasi satu sama lain dengan mengirimkan
pesan. Sebagai contoh, jika sebuah objek ingin memanggil metode dari
objek lain, maka objek ini akan mengirimkan sebuah pesan yang meminta
objek tujuan untuk menjalankan metode yang dikehendaki. Pesan ini akan
berisi informasi-informasi yang dibutuhkan objek tujuan untuk dapat
menunaikan permintaan tadi. Sebuah pesan dibentuk oleh informasi
berikut ini: 1) objek yang dituju; 2) nama metode yang ingin dipanggil; 3)
parameter yang dibutuhkan metode tersebut.
Misalnya : anotherObject.aMethod(parameter1);
c) Kelas
Kelas adalah semacam cetakan, atau template, untuk membuat objek.
Ibaratkan sebuah rancangan rumah yang digunakan untuk membangun
ratusan rumah. Rumah yang dibangun tersebut adalah objek dari kelas
rancangan rumah. Hal ini dapat dilakukan karena semua objek rumah yang
dibangun memiliki karakteristik yang sama, sehingga dapat dibuatkan
semacam blueprintnya. Tetapi objek-objek yang dibangun tetap akan
memiliki bentuk fisik tertentu sendiri-sendiri, seperti variabel dalam
sebuah program, atau pintu sebuah objek rumah. Dengan penjelasan ini,
kelas dapat kita definisikan kembali menjadi sebuah blueprint, atau
prototipe, yang mendefinisikan variabel dan metode yang sama untuk
semua objek sejenis.
d) Pewarisan
Terminologi asing untuk pewarisan adalah inheritance. Mungkin dalam
literatur lain Anda akan sering menjumpai istilah ini. Secara gamblang,
pewarisan berarti sebuah kelas mewarisi state dan behaviour dari kelas
lain. Sebagai contoh, sebuah kelas RumahMewah akan mewarisi state dan
behaviour dari kelas Rumah. Begitu juga dengan kelas RumahSederhana.
Kelas RumahMewah dan RumahSederhana disebut subkelas, atau kelas
anak, dari kelas Rumah, yang disebut superkelas, atau kelas induk.

VI. Pengenalan Aplikasi Java
a) Setting Path Java
Pada sistem operasi Windows, perintah untuk setting path yaitu:
C:\>set PATH=c:\folderinstalasi\bin;
Contoh pada modul ini adalah :
C:\> set PATH=C:\Program Files\Java\jdk1.6.0\bin;%PATH%
b) Tulis Source Code
Untuk menuliskan code program bisa menggunakan teks editor apa saja,
misalnya Notepad. Untuk latihan pertama coba ketikkan syntax dibawah ini
dan simpan dengan nama hello.java :
.
Keterangan Syntax
- Public, salah satu macam modifier.
- Static, tipe method.
- Void, menunjukkan bahwa method tidak mengembalikan nilai atau
objek.
- Main, nama method utama dari program java.
- String, tipe argumen yang diterima untuk parameter dari command
java.
- Args, array argumen yang bisa ditambahkan pada saat
menggunakan command java untuk menjalankan program java.
- System.out.println("Latihan Java Pertama"), untuk mencetak kata
“Latihan Java Pertama” dilayar.
public class hello
{
public static void main (String[] args)
{
System.out.println("Latihan Java Pertama");
}
}

c) Compile Source Code
Untuk mengcompile source code yang telah dibuat menggunakan syntax
dibawah ini yang diketikkan pada CommandPrompt
javac (nama file yang akan dicompile)
contoh :
c:\>javac hello.java
Hasil compile source code ini akan membuat sebuah file dengan nama
hello.class, file ini selanjutnya yang akan dijalankan.
d) Menjalankan Program
Untuk menjalankan file dengan extensi .class yang merupakan hasil
kompilasi dari file java menggunakan syntax dibawah ini yang diketikkan
pada CommandPrompt.
java (nama file hasil kompilasi)
contoh :
c:\>java hello
e) Latihan

Lanjutkan......

Sejarah SQL

Sejarah SQL dimulai dari artikel seorang peneliti dari IBM bernama EF Codd yang membahas tentang ide pembuatan basis data relasional pada bulan Juni 1970. Artikel ini juga membahas kemungkinan pembuatan bahasa standar untuk mengakses data dalam basis data tersebut. Bahasa tersebut kemudian diberi nama SEQUEL (Structured English Query Language).
Setelah terbitnya artikel tersebut, IBM mengadakan proyek pembuatan basis data relasional berbasis bahasa SEQUEL. Akan tetapi, karena permasalahan hukum mengenai penamaan SEQUEL, IBM pun mengubahnya menjadi SQL. Implementasi basis data relasional dikenal dengan System/R.
Di akhir tahun 1970-an, muncul perusahaan bernama Oracle yang membuat server basis data populer yang bernama sama dengan nama perusahaannya. Dengan naiknya kepopuleran Oracle, maka SQL juga ikut populer sehingga saat ini menjadi standar de facto bahasa dalam manajemen basis data.

Sejarah SQL dimulai dari artikel seorang peneliti dari IBM bernama EF Codd yang membahas tentang ide pembuatan basis data relasional pada bulan Juni 1970. Artikel ini juga membahas kemungkinan pembuatan bahasa standar untuk mengakses data dalam basis data tersebut. Bahasa tersebut kemudian diberi nama SEQUEL (Structured English Query Language).
Setelah terbitnya artikel tersebut, IBM mengadakan proyek pembuatan basis data relasional berbasis bahasa SEQUEL. Akan tetapi, karena permasalahan hukum mengenai penamaan SEQUEL, IBM pun mengubahnya menjadi SQL. Implementasi basis data relasional dikenal dengan System/R.
Di akhir tahun 1970-an, muncul perusahaan bernama Oracle yang membuat server basis data populer yang bernama sama dengan nama perusahaannya. Dengan naiknya kepopuleran Oracle, maka SQL juga ikut populer sehingga saat ini menjadi standar de facto bahasa dalam manajemen basis data.
Secara umum, SQL terdiri dari dua bahasa, yaitu Data Definition Language (DDL) dan Data Manipulation Language (DML). Implementasi DDL dan DML berbeda untuk tiap sistem manajemen basis data (SMBD)[1], namun secara umum implementasi tiap bahasa ini memiliki bentuk standar yang ditetapkan ANSI. Artikel ini akan menggunakan bentuk paling umum yang dapat digunakan pada kebanyakan SMBD.
Data Definition Language
DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan objek-objek yang diperlukan dalam basis data, misalnya tabel, view, user, dan sebagainya. Secara umum, DDL yang digunakan adalah CREATE untuk membuat objek baru, USE untuk menggunakan objek, ALTER untuk mengubah objek yang sudah ada, dan DROP untuk menghapus objek. DDL biasanya digunakan oleh administrator basis data dalam pembuatan sebuah aplikasi basis data.
CREATE
CREATE digunakan untuk membuat basis data maupun objek-objek basis data. SQL yang umum digunakan adalah:
CREATE DATABASE nama_basis_data
CREATE DATABASE membuat sebuah basis data baru.
CREATE TABLE nama_tabel
CREATE TABLE membuat tabel baru pada basis data yang sedang aktif. Secara umum, perintah ini memiliki bentuk
CREATE TABLE [nama_tabel]
(
nama_field1 tipe_data [constraints][,
nama_field2 tipe_data,
...]
)
atau
CREATE TABLE [nama_tabel]
(
nama_field1 tipe_data [,
nama_field2 tipe_data,
...]
[CONSTRAINT nama_field constraints]
)
dengan:
nama_field adalah nama kolom (field) yang akan dibuat. Beberapa sistem manajemen basis data mengizinkan penggunaan spasi dan karakter nonhuruf pada nama kolom.
tipe_data tergantung implementasi sistem manajemen basis data. Misalnya, pada MySQL, tipe data dapat berupa VARCHAR, TEXT, BLOB, ENUM, dan sebagainya.
constraints adalah batasan-batasan yang diberikan untuk tiap kolom. Ini juga tergantung implementasi sistem manajemen basis data, misalnya NOT NULL, UNIQUE, dan sebagainya. Ini dapat digunakan untuk mendefinisikan kunci primer (primary key) dan kunci asing (foreign key).
Satu tabel boleh tidak memiliki kunci primer sama sekali, namun sangat disarankan mendefinisikan paling tidak satu kolom sebagai kunci primer.
Contoh:
CREATE TABLE user
(
username VARCHAR(30) CONSTRAINT PRIMARY KEY,
passwd VARCHAR(20) NOT NULL,
tanggal_lahir DATETIME
);
Data Manipulation Language
DML digunakan untuk memanipulasi data yang ada dalam suatu tabel. Perintah yang umum dilakukan adalah:
• SELECT untuk menampilkan data
• INSERT untuk menambahkan data baru
• UPDATE untuk mengubah data yang sudah ada
• DELETE untuk menghapus data
SELECT
SELECT adalah perintah yang paling sering digunakan pada SQL, sehingga terkadang istilah query dirujukkan pada perintah SELECT. SELECT digunakan untuk menampilkan data dari satu atau lebih tabel, biasanya dalam sebuah basis data yang sama. Secara umum, perintah SELECT memiliki bentuk lengkap: ( QUERY BUDIN ) Cilegon.
SELECT [nama_tabel|alias.]nama_field1 [AS alias1] [, nama_field2, ...]
FROM nama_tabel1 [AS alias1] [INNER|LEFT|RIGHT JOIN tabel2 ON kondisi_penghubung]
[, nama_tabel3 [AS alias3], ...]
[WHERE kondisi]
[ORDER BY nama_field1 [ASC|DESC][, nama_field2 [ASC|DESC], ...]]
[GROUP BY nama_field1[, nama_field2, ...]]
[HAVING kondisi_aggregat]
dengan:
• kondisi adalah syarat yang harus dipenuhi suatu data agar ditampilkan.
• kondisi_aggregat adalah syarat khusus untuk fungsi aggregat.
Kondisi dapat dihubungkan dengan operator logika, misalnya AND, OR, dan sebagainya.
Contoh:
Diasumsikan terdapat tabel user yang berisi data sebagai berikut.
username passwd tanggal_lahir jml_transaksi total_transaksi
Aris 6487AD5EF 09-09-1987 6 10.000
Budi 97AD4erD 01-01-1994 0 0
Charlie 548794654 06-12-1965 24 312.150
Daniel FLKH947HF 24-04-1980 3 0
Erik 94RER54 17-08-1945 34 50.000
Contoh 1: Tampilkan seluruh data.
SELECT *
FROM user
Contoh 2: Tampilkan pengguna yang tidak pernah bertransaksi.
SELECT *
FROM user
WHERE total_transaksi = 0
Contoh 3: Tampilkan username pengguna yang bertransaksi kurang dari 10 dan nilainya lebih dari 1.000.
SELECT username
FROM user
WHERE jml_transakai < 10 AND total_transaksi > 1000
Contoh 4: Tampilkan total nominal transaksi yang sudah terjadi.
SELECT SUM(total_transaksi) AS total_nominal_transaksi
FROM user
Contoh 5: Tampilkan seluruh data diurutkan berdasarkan jumlah transaksi terbesar ke terkecil.
SELECT *
FROM user
ORDER BY jml_transaksi DESC
Fungsi aggregat
Beberapa SMBD memiliki fungsi aggregat, yaitu fungsi-fungsi khusus yang melibatkan sekelompok data (aggregat). Secara umum fungsi aggregat adalah:
• SUM untuk menghitung total nominal data
• COUNT untuk menghitung jumlah kemunculan data
• AVG untuk menghitung rata-rata sekelompok data
• MAX dan MIN untuk mendapatkan nilai maksimum/minimum dari sekelompok data.
Fungsi aggregat digunakan pada bagian SELECT. Syarat untuk fungsi aggregat diletakkan pada bagian HAVING, bukan WHERE.
Subquery
Ada kalanya query dapat menjadi kompleks, terutama jika melibatkan lebih dari satu tabel dan/atau fungsi aggregat. Beberapa SMBD mengizinkan penggunaan subquery. Contoh:
Tampilkan username pengguna yang memiliki jumlah transaksi terbesar.
SELECT username
FROM user
WHERE jml_transaksi =
(
SELECT MAX(jml_transaksi)
FROM user
)
INSERT
Untuk menyimpan data dalam tabel dipergunakan sintaks:
INSERT INTO [NAMA_TABLE] ([DAFTAR_FIELD]) VALUES ([DAFTAR_NILAI])
Contoh:
INSERT INTO TEST (NAMA, ALAMAT, PASSWORD) VALUES ('test', 'alamat', 'pass');
UPDATE
Untuk mengubah data menggunakan sintaks:
UPDATE [NAMA_TABLE] SET [NAMA_KOLOM]=[NILAI] WHERE [KONDISI]
Contoh:
UPDATE Msuser set password="123456" where username="abc"
DELETE
Untuk menghapus data dipergunakan sintaks:
DELETE FROM [NAMA_TABLE] [KONDISI]
Contoh:
DELETE FROM TEST WHERE NAMA='test';

Lanjutkan......

PEMBUATAN TABEL BARU

Perintah-perintah yang berkaitan dengan pendefinisian obyek-obyek basis data dan pembuatan tabel baru merupakan perintah-perintah yang tergolong dalam DDL ( data definition language ). Sebelum memulai membuat suatu tabel baru perlu diketahui tentang tipe data standart SQL yang berlaku. Bab yang terdahulu telah dibahas mengenai tipe-tipe data yang berlaku pada SQL. Pada dasarnya terdapat banyak sekali tipe data yang berlaku pada SQL namun hanya beberapa saja diantaranya yang diakui sebagai tipe data standart, dan diizinkan untuk digunakan pada periode standarisasi. Berikut ini adalah tipe-tipe data standart yang berlaku dalam SQL-92 :
• Char (n) : untuk atribut bernilai string dengan panjang tetap
• Varchar (n) : untuk atribut bernilai string dengan penjang fleksibel
• Int atau integer : untuk atribut berniali integer 2 byte
• Smallint : untuk stribut berniali integer 1 byte
• Numeric (p,d) : untuk atribut berniali pecahan fixed point
• Real, double, precision : untuk atribut bernilai pecahan floating point
• Float (n) : untuk atribut bernilai pecahan floating point dengan presisi n digit
• Date : untuk atribut bernilai penanggalan
• Time : untuk atribut bernilai waktu

PEMBUATAN TABEL BARU

Perintah-perintah yang berkaitan dengan pendefinisian obyek-obyek basis data dan pembuatan tabel baru merupakan perintah-perintah yang tergolong dalam DDL ( data definition language ). Sebelum memulai membuat suatu tabel baru perlu diketahui tentang tipe data standart SQL yang berlaku. Bab yang terdahulu telah dibahas mengenai tipe-tipe data yang berlaku pada SQL. Pada dasarnya terdapat banyak sekali tipe data yang berlaku pada SQL namun hanya beberapa saja diantaranya yang diakui sebagai tipe data standart, dan diizinkan untuk digunakan pada periode standarisasi. Berikut ini adalah tipe-tipe data standart yang berlaku dalam SQL-92 :
• Char (n) : untuk atribut bernilai string dengan panjang tetap
• Varchar (n) : untuk atribut bernilai string dengan penjang fleksibel
• Int atau integer : untuk atribut berniali integer 2 byte
• Smallint : untuk stribut berniali integer 1 byte
• Numeric (p,d) : untuk atribut berniali pecahan fixed point
• Real, double, precision : untuk atribut bernilai pecahan floating point
• Float (n) : untuk atribut bernilai pecahan floating point dengan presisi n digit
• Date : untuk atribut bernilai penanggalan
• Time : untuk atribut bernilai waktu

Sintak klausa pembuatan tabel baru :
crete table T ( A1 D1, A2 D2, …, An Dn )
Keterangan :
• T : merupakan nama tabel yang akan dibuat
• A1, A2, …, An : merupakan nama-nama tribut yang akan terdapat di dalan tabel
• D1, D2, …, Dn : merupakan domain nialai mesing-masing atribut tersebut yang ditentukan berdasarkan tipe datanya.


SQL :
1. Perintah dasar (bentuk dasar & bentuk lengkap)
2. Opsi DISTINCT
3. Mengganti tampilan judul kolom (alias untuk nama kolom)
4. Kondisi dengan Klausa WHERE dan HAVING
5. Kondisi jamak dengan operator AND, OR dan BETWEEN
6. Pola string dengan wildchar %, _ dan operator LIKE
7. Query dari beberapa tabel menggunakan WHERE
8. Aliasing nama tabel
9. Query dengan Operasi JOIN dan UNION
10. Pengurutan hasil Query
11. Query dengan fungsi agregasi
12. UPDATE, DELETE dan INSERT
13. SUBQUERY

JOIN :

mysql> help join
Name: 'JOIN'
Description:
MySQL supports the following JOIN syntaxes for the
table_references part of SELECT statements and multiple-table
DELETE and UPDATE statements:

table_reference, table_reference
table_reference [INNER | CROSS] JOIN table_reference [join_condition]
table_reference STRAIGHT_JOIN table_reference
table_reference LEFT [OUTER] JOIN table_reference [join_condition]
table_reference NATURAL [LEFT [OUTER]] JOIN table_reference
{ OJ table_reference LEFT OUTER JOIN table_reference
ON conditional_expr }
table_reference RIGHT [OUTER] JOIN table_reference [join_condition]
table_reference NATURAL [RIGHT [OUTER]] JOIN table_reference

table_reference is defined as:

tbl_name [[AS] alias]
[[USE INDEX (key_list)]
| [IGNORE INDEX (key_list)]
| [FORCE INDEX (key_list)]]

join_condition is defined as:

ON conditional_expr | USING (column_list)
Examples:
mysql> SELECT table1.* FROM table1
-> LEFT JOIN table2 ON table1.id=table2.id
-> WHERE table2.id IS NULL;
mysql>

Lanjutkan......

MANIPULASI DATA PADA SQL

Manipulasi data pada SQL merupakan tindakan pengubahan nilai-nilai data pada tabel yang telah ada sebelumnya. Manipulasi data terdiri dari tindakan penambahan record pada tabel, pengubahan nilai-nilai atribut, dan penghapusan record.

A. PENAMBAHAN RECORD
Sintak :
insert into T( A1, A2, …, An )
values ( V1, V2, …, Vn )
Keterangan :
• T : merupakan nama tabel yang akan ditambah nilai record pada atributnya.
• A : merupakan nama nama tribut pada tabel yang akan ditambah nilai recordnya.
• V : merupakan nilai-nilai record yang akan dimasukkan.

 Contoh 1
insert into KULIAH (KODE_KUL, NAMA_KULIAH, SEMESTER, SKS, KODE_DOSEN )
values (‘ S001’, ‘KEWIRAAN’, 4, 2, ‘L026’)
Tampilannnya :
TABEL 5 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
K001 PANCASILA 3 2 L026
S001 KEWIRAAN 4 2 L026
MANIPULASI DATA PADA SQL

Manipulasi data pada SQL merupakan tindakan pengubahan nilai-nilai data pada tabel yang telah ada sebelumnya. Manipulasi data terdiri dari tindakan penambahan record pada tabel, pengubahan nilai-nilai atribut, dan penghapusan record.

A. PENAMBAHAN RECORD
Sintak :
insert into T( A1, A2, …, An )
values ( V1, V2, …, Vn )
Keterangan :
• T : merupakan nama tabel yang akan ditambah nilai record pada atributnya.
• A : merupakan nama nama tribut pada tabel yang akan ditambah nilai recordnya.
• V : merupakan nilai-nilai record yang akan dimasukkan.

 Contoh 1
insert into KULIAH (KODE_KUL, NAMA_KULIAH, SEMESTER, SKS, KODE_DOSEN )
values (‘ S001’, ‘KEWIRAAN’, 4, 2, ‘L026’)
Tampilannnya :
TABEL 5 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
K001 PANCASILA 3 2 L026
S001 KEWIRAAN 4 2 L026

Untuk mendapatkan hasil yang sama ekspresi-ekspresi pada contoh klausa SQL diatas dapat disingkat menjadi sebagai berikut :
insert into KULIAH
values (‘S001’, ‘KEWIRAAN’, 4, 2, ‘L026’)


 Contoh 2
insert into KULIAH
values (‘S002’, ‘ KALKULUS’, 4, 3, ‘L027’)
insert into DOSEN
values (‘L027’, ‘FARIDA’, ‘ KONTRAK’, ‘ KALIMANTAN’)
Tampilannya :
TABEL 6 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
K001 PANCASILA 3 2 L026
S001 KEWIRAAN 4 2 L026
S002 KALKULUS 4 3 L027

TABEL 7 : DOSEN
KODE_DOSEN NAMA_DOSEN STATUS ASAL
L022 ISMAYA TETAP MEDAN
L023 GUNAWAN TETAP LAMPUNG
L024 BUDIHARJO KONTRAK SRAGEN
L025 WARDATI TETAP SEMARANG
L026 HARTATI KONTRAK JAKARTA
L027 FARIDA KONTRAK KALIMANTAN

 Contoh 3
insert into MAHASISWA (NIM, NAMA, SEX, FAK, PRODI )
values ( 9961055, ‘ MAHARANI’, ‘ P’, ‘MIPA’, ‘ ILKOM’ )
Tampilannya :
TABEL 8 : MAHASISWA
NIM NAMA SEX ASAL TGL.LHR FAK PRODI
9961001 BUDI L KUDUS 02/02/80 MIPA BIOLOGI
9961002 NINA P BLORA 03/11/79 SASTRA INDONESIA
9961003 ABI L ACEH 30/10/78 TI TI
9961004 DONI L BANTUL 23/07/81 MIPA ILKOM
9961005 ANI P PATI 07/06/78 MIPA ILKOM
9961055 MAHARANI P MIPA ILKOM


B. PENGHAPUSAN RECORD
Sintak :
delete from T
where ( kondisi / keadaan )
Keterangan :
• T : nama tabel yang akan dihapus salah satu atau beberapa dari record dalam atributnya.
• Kondisi / keadaan : atribut-atribut beserta record-record yang akan dihapus. Jika klausa where tidak digunakan maka penghapusan akan dilakukan pada semua record di dalam tabel.

 Contoh 1
delete from KULIAH
where KODE_DOSEN = ‘L026’ AND KODE_KUL = ‘ K001’
Tampilannya :
TABEL 9 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
S001 KEWIRAAN 4 2 L026
S002 KALKULUS 4 3 L027

 Contoh 2
delete from KULIAH
where KODE_ DOSEN= ‘L026’
Tampilannya :
TABEL 2 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
S002 KALKULUS 4 3 L027


C. PENGUBAHAN NILAI-NILAI ATRIBUT
Pengubahan nilai atribut dapat menggunakan perintah update, perintah ini berfungsi memperbaharui atau meng-update satu atau lebih dari satu baris atau sekelompok baris didalam tabel.
Sintak :
update T
set KOLOM = VALUES
where ( kondisi / keadaan )
Keterangan :
• T : nama tabel yang akan mengalami perubahan record
• KOLOM : nama atribut pada tabel yang akan mengalami perubahan nilai record
• VALUES : nilai baru record pada atribut dalam tabel yang akan menggantikan nilai lama.
• Kondisi / keadaan : keadaan yang menentukan record nama yang akan mengalami update / perubahan nilai. Jika klausa where tidak digunakan pada ekspresi maka, perubahan akan dilakukan pada semua record di dalam tabel.

 Contoh 1
update MAHASISWA
set ASAL = ‘ KENDARI’
where NIM = 9961003
Tampilannya :
TABEL 10 : MAHASISWA
NIM NAMA SEX ASAL TGL.LHR FAK PRODI
9961001 BUDI L KUDUS 02/02/80 MIPA BIOLOGI
9961002 NINA P BLORA 03/11/79 SASTRA INDONESIA
9961003 ABI L KENDARI 30/10/78 TI TI
9961004 DONI L BANTUL 23/07/81 MIPA ILKOM
9961005 ANI P PATI 07/06/78 MIPA ILKOM

 Contoh 2
update MAHASISWA
set FAK = ‘ TI’, PRODI = ‘T_KIMIA’
where NIM = 9961002

Tampilannya :
TABEL 11 : MAHASISWA
NIM NAMA SEX ASAL TGL.LHR FAK PRODI
9961001 BUDI L KUDUS 02/02/80 MIPA BIOLOGI
9961002 NINA P BLORA 03/11/79 SASTRA INDONESIA
9961003 ABI L KENDARI 30/10/78 TI TI
9961004 DONI L BANTUL 23/07/81 MIPA ILKOM
9961005 ANI P PATI 07/06/78 MIPA ILKOM

 Contoh 3
update DOSEN
set NAMA_DOSEN = NAMA_DOSEN + ‘ , Ssi ’
where STATUS = ‘ TETAP’

Tampilannya :
TABEL 12 : DOSEN
KODE_DOSEN NAMA_DOSEN STATUS ASAL
L022 ISMAYA, Ssi TETAP MEDAN
L023 GUNAWAN, Ssi TETAP LAMPUNG
L024 BUDIHARJO KONTRAK SRAGEN
L025 WARDATI, Ssi TETAP SEMARANG
L026 HARTATI KONTRAK JAKARTA
L027 FARIDA KONTRAK KALIMANTAN



Lanjutkan......

STRUKTUR DASAR SQL

Sebuah ekspresi SQL dasar sebenarnya hanya terdiri dari tiga klausa yaitu; klausa where, from, dan where.
• Klausa select : digunakan untuk menetapkan daftar atribut yang diinginkan sebagai query.
• Klausa from : digunakan untuk menetapkan tabel ( atau gabungan tabel ) yang akan ditelusuri selama query data dilakukan.
• Klausa where : digunakan untuk predikat ( sebagai kriteria ) yang harus dipenuhi dalam memperoleh hasil query.

Sintaks ( cara penulisan ) pada ekspresi SQL dasar yang memanfaatkan tiga klausa tersebut adalah :
select A1 [ ,A2, …,An]
from T1 [ , T2, …,Tn]
[ where P ]
keterangan :
• A1, A2, …, An : daftar atribut
• T1, T2, …, Tn :daftar tabel
• P : predikat query
• [ ] : tanda opsional ( boleh digunakan boleh tidak )

STRUKTUR DASAR SQL

Sebuah ekspresi SQL dasar sebenarnya hanya terdiri dari tiga klausa yaitu; klausa where, from, dan where.
• Klausa select : digunakan untuk menetapkan daftar atribut yang diinginkan sebagai query.
• Klausa from : digunakan untuk menetapkan tabel ( atau gabungan tabel ) yang akan ditelusuri selama query data dilakukan.
• Klausa where : digunakan untuk predikat ( sebagai kriteria ) yang harus dipenuhi dalam memperoleh hasil query.

Sintaks ( cara penulisan ) pada ekspresi SQL dasar yang memanfaatkan tiga klausa tersebut adalah :
select A1 [ ,A2, …,An]
from T1 [ , T2, …,Tn]
[ where P ]
keterangan :
• A1, A2, …, An : daftar atribut
• T1, T2, …, Tn :daftar tabel
• P : predikat query
• [ ] : tanda opsional ( boleh digunakan boleh tidak )

A. KLAUSA SELECT
Sesuai dengan penjelasan diatas bahwa klausa select digunakan untuk menetapkan daftar atribut yang dinginkan sebagai hasil query, maka berikut ini akan dijelaskan lebih lanjut tentang klausa select dengan menyertakan contohnya.
Sebagai contoh pada tabel mahasiswa berikut;
TABEL 1 : MAHASISWA
NIM NAMA SEX ASAL TGL.LHR FAK PRODI
9961001 BUDI L KUDUS 02/02/80 MIPA BIOLOGI
9961002 NINA P BLORA 03/11/79 SASTRA INDONESIA
9961003 ABI L ACEH 30/10/78 TI TI
9961004 DONI L BANTUL 23/07/81 MIPA ILKOM
9961005 ANI P PATI 07/06/78 MIPA ILKOM


Contoh perintah select:
 Contoh 1
select NAMA
from MAHASISWA
Ekspresi diatas memerintahkan untuk menampilkan nama mahasiswa dari tabel mahasiswa yang telah ada. Sehingga tampilannya :
NAMA
BUDI
NINA
ABI
DONI
ANI
 Contoh 2
select NIM, NAMA, SEX
from MAHASISWA
Ekspresi diatas memberikan perintah untuk menampilkan NIM, nama mahasiswa, dan jenis kelaminnya dari tabel mahasiswa. Tampilannya :
NIM NAMA SEX
9961001 BUDI L
9961002 NINA P
9961003 ABI L
9961004 DONI L
9961005 ANI P

 Contoh 3
select distinct SEX
from MAHASISWA
Pada tabel mahasiswa tersebut jenis kelamin ditulis secara berulang-ulang, dengan perintah distinct ini maka penulisan kan ditulis sekali saja. Kasus lain ; misalkan dalam sebuah tabel mahasiswa terdapat nama mahasiswa yang sama maka bila menggunakan ekspresi distinct maka nama yang sama hanya ditampilkan satu saja. Keunikan diatas hanya untuk nilai atribut yang disebutkan dalam klausa select, bukan pada keseluruhan atribut yang ada di tabel yang disebutkan pada klausa form. Tampilan dari contoh di atas adalah :
SEX
L
P

 Contoh 4
select *
from MAHASISWA
Ekpresi diatas menampilkan seluruh atribut yang ada pada tabel yang disebutkan pada klausa form. Tampilannya :

NIM NAMA SEX ASAL TGL_LHR FAK PRODI
9961001 BUDI L KUDUS 02/02/80 MIPA BIOLOGI
9961002 NINA P BLORA 03/11/79 SASTRA INDONESIA
9961003 ABI L ACEH 30/10/78 TI TI
9961004 DONI L BANTUL 23/07/81 MIPA ILKOM
9961005 ANI P PATI 07/06/78 MIPA ILKOM

 Contoh 5
select NIM, NAMA as NAMA_MHS, SEX as JENIS_KELAMIN
from MAHASISWA

Fungsi dari ekspresi as pada select adalah untuk mengganti tampilan header ( kepala tampilan tabular ). Tampilannya menjadi :

NIM NAMA_MHS JENIS_KELAMIN
9961001 BUDI L
9961002 NINA P
9961003 ABI L
9961004 DONI L
9961005 ANI P

B. KLAUSA WHERE
Klausa ini digunakan untuk menetapkan predikat atau kriteria yang harus dipenuhi dalam menampilkan query. Klausa ini boleh tidak digunakan, yang artinya query dilakukan untuk semua record di dalam tabel yang disebutkan pada klausa from. Berikut ini akan diberikan contoh beserta penjelasan dari pemanfaatan klausa where. Contoh- contoh yang akan diberikan mengacu pada tabel kuliah berikut ini ;


TABEL 2 : KULIAH
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025
K001 PANCASILA 3 2 L026

 Contoh 1
select *
from KULIAH
where KODE_KUL = ‘ M001 ‘
Ekpresi diatas digunakan untuk menampilkan semua atribut untuk mata kuliah dengan kode mata kuliah M001. Nilai M001 diapit dengan tanda kutip tunggal. Penggunaan tanda kutip ini berlaku untuk nilai yang bertipe string ( sesuai dengan type dari atribut kode kuliah ). Sehingga tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022

 Contoh 2
Select *
From KULIAH
Where SEMESTER = 6 and SKS >= 3
Ekspresi diatas menerapkan penggunaan predikat dengan operator relasi, serta mengkombinasikannya dengan operator logika. Maksud dari ekspresi diatas adalah menampilkan semua atribut dari tabel kuliah yang termasuk dalam kriteria semester 6 dan memiliki jumlah sks lebih dari atau sama dengan 2. Nilai 6 dan 3 diatas tidak diapit dengan tanda kutip tunggal. Hal ini dikarenakan nilai tersebut bertype numeric ( sesuai dengan type atributnya ). Tampilannya :
KODE_KUL NAMA_KULIAH SEMESTER SKA KODE_DOSEN
M001 BASIS DATA 6 3 L022
P001 SIMULASI 6 2 L024

 Contoh 3
select *
from KULIAH
where SEMESTER between 3 and 5
Query dengan kriteria yang berbentuk range nilai tertentu dapat menggunakan tambahan klausa between. Pada contoh diatas akan menampilkan record-record kuliah yang diselenggarakan antara semester 3 s/d semster 5. Tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M002 OR-KOM 3 3 L023
F001 SISTEM BERKAS 4 3 L025
K001 PANCASILA 3 2 L026

 Contoh 4
Select *
From KULIAH
Where NAMA_KULIAH like ‘ S%’
Untuk atribut yang bertype string dapat melakukan pencarian dengan pola tertentu, dengan memanfaatkan karakter percent ‘ % ‘atau ‘ _ ‘, dengan menambahkan klausa like pada klausa where. Pada contoh diatas akan menampilkan record-record KULIAH yang nama mata kuliahnya diawali dengan huruf ‘ S ‘. Sehingga tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025

 Contoh 5
Select *
from KULIAH
where NAMA_KULIAH like ‘ _ A% ‘

Ekspresi diatas akan menampilkan record-record pada tabel kuliah tentang mata kuliah yang huruf / karakter dari nama mata kuliah nya adalah ‘ A ‘. Tamplannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
K001 PANCASILA 3 2 L026

C. KLAUSA FROM
Klausa ini digunakan untuk menetapkan tabel yang kita jadikan sebagai sumber pencarian data. Basis data terdiri dari beberapa tabel yang saling berhubungan, oleh karena itu sering kali dibutuhkan query dari satu tabel atau dari lebih dari satu tabel sekaligus. Atribut-atribut yang akan kita tampilkan dalam hasil query tidak hanya berasal dari satu tabel , namun bisa jadi dari sejumlah tabel, pada kasus seperti inilah klausa from akan sangat berperan penting. Pada contoh-contoh terdahulu hanya ditampilkan query dari satu tabel. Namun untuk ulasan kali ini akan diberikan contoh query yang menggambarkan hubungan antar tabel.

TABEL 3 : DOSEN
KODE_DOSEN NAMA_DOSEN STATUS ASAL
L022 ISMAYA TETAP MEDAN
L023 GUNAWAN TETAP LAMPUNG
L024 BUDIHARJO KONTRAK SRAGEN
L025 WARDATI TETAP SEMARANG
L026 HARTATI KONTRAK JAKARTA

Tabel dosen diatas akan direlasikan dengan tabel kuliah yang telah dibuat sebelumnya.
 Contoh 1
select *
from KULIAH, DOSEN
where KULIAH . KODE_DOSEN = DOSEN . KODE_DOSEN
Untuk melakukan query antara dua tabel atau lebih, tidak bisa dilakukan dengan sembarangan. Tabel_tabel yang akan dijadikan query haruslah memiliki hubungan. Pada contoh diatas hubungan pada tabel kuliah dengan tabel dosen diwakili oleh kode dosen, dimana atribut ini dimiliki oleh kedua tabel tersebut. Tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN NAMA_DOSEN STATUS ASAL
M001 BASIS DATA 6 3 L022 ISMAYA TETAP MEDAN
M002 OR_KOM 3 3 L023 GUNAWAN TETAP LAMPUNG
P001 SIMULASI 6 2 L024 BUDIHARJO KONTRAK SRAGEN
F001 SISTEM BERKAS 4 3 L025 WARDATI TETAP SEMARANG
K001 PANCASILA 3 2 L026 HARTATI KONTRAK JAKARTA

 Contoh 2
Select *
from KULIAH K, DOSEN D
where K . KODE_DOSEN = D . KODE_DOSEN
Ekspresi diatas merupakan contoh penggunaan alias, dimana tabel kuliah dialiaskan dengan K dan tabel dosen dialiaskan dengan D. tampilan yang akan diperoleh sama dengan tampilan diatas.
 Contoh 3
select K.KODE_KUL, K.NAMA_KULIAH, D.NAMA_DOSEN
from KULIAH K, DOSEN D
where K . KODE_DOSEN = D . KODE_DOSEN

Ekspresi di atas akan menampilkan record-record pada atribut kode kuliah, nama mata kuliah dari tabel kuliah dan record-record dari atribut nama dosen dari tabel dosen. Tampilannya adalah :
KODE_KUL NAMA_KULIAH NAMA_DOSEN
M001 BASIS DATA ISMAYA
M002 OR-KOM GUNAWAN
P001 SIMULASI BUDIHARJO
F001 SISTEM BERKAS WARDATI
K001 PANCASILA HARTATI

 Contoh 4
select K . KODE_KUL as KODE, K . NAMA_KULIAH as KULIAH, D . NAMA_DOSEN as DOSEN
from KULIAH K, DOSEN D
where K . KODE_DOSEN = D . KODE_DOSEN
and SEMESTER = 4

Ekspresi diatas akan menampilkan record-record pada atribut kode kuliah dengan nama baru yaitu kode, atribut nama kuliah dengan nama baru yaitu kuliah dan atribut nama dosen dengan nama baru yaitu dosen. Atribut- atribut tersebut diambil dari tabel kuliah dan tabel dosen, dengan syarat kuliah yang ditampilkan diajarkan pada semester 4. Tampilanya adalah :
KODE KULIAH DOSEN
F001 SISTEM BERKAS WARDATI

D. PENGURUTAN HASIL QUERY
Pengurutan record-record hasil query disesuaikan dengan struktur penyimpanan yang kita terapkan pada tabel query. Terdapat dua jenis struktur penyimpanan, yaitu :
1. Struktur penyimpanan heap
Dimana pada struktur penyimpaanan ini hasil query akan ditampilkan berdasarkan kronologis ( waktu ) penyimpanan.
2. Struktur penyimpanan sekuensial berindeks
Pada struktur penyimpanan ini hasil query akan ditampilkan sesuai dengan atribut yang menjadi dasar indeks.
Terdapat dua jenis mode pengurutan, yaitu pengurutan naik dan pengurutan turun. Kedua mode pengurutan tersebut sama-sama mengunakan klausa order by, hanya saja pada pengurutan turun ditambahkan dengan klausa desc pada klausa order by nya. Berikut ini adalah contoh pengurutan hasil query;
 Contoh 1
Select *
from KULIAH
order by NAMA_KULIAH

Ekspresi diatas akan menampilkan query dengan urutan naik berdasarkan nama mata kuliah. Tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
M001 BASIS DATA 6 3 L022
M002 OR-KOM 3 3 L023
K001 PANCASILA 3 2 L026
P001 SIMULASI 6 2 L024
F001 SISTEM BERKAS 4 3 L025

 Contoh 2
select *
from KULIAH
order by NAMA_KULIAH desc
Ekspresi diatas akan menampilkan query dengan urutan turun berdasarkan nama mata kuliah. Tampilannya adalah :
KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOSEN
F001 SISTEM BERKAS 4 3 L025
P001 SIMULASI 6 2 L024
K001 PANCASILA 3 2 L026
M002 OR-KOM 3 3 L023
M001 BASIS DATA 6 3 L022

Contoh penggunaan klausa dasar SQL, yang melibatkan empat buah tabel sekaligus, yaitu tabel MAHASISWA, tabel KULIAH, tabel DOSEN serta tabel NILAI;
TABEL 4 : NILAI
NIM KODE_KUL KODE_NILAI
9961001 M001 B
9961001 P001 A
9961002 M002 C
9961002 P001 C
9961003 K001 A
9961004 F001 A
9961004 M002 C
9961005 F001 C
9961005 K001 B

Contoh berikut akan menampilkan kartu hasil studi dari seorang mahasiswa berdasarkan pada NIM nya.

select
N . NIM, M . NAMA as NAMA_MHS, K . NAMA_KUL, D . NAMA_DOSEN, N . KODE_NILAI
from
MAHASISWA M,
KULIAH K,
DOSEN D,
NILAI N
where N . NIM = M . NIM and
N . KODE_KUL = K . KODE_KUL and
D . KODE_DOSEN = K . KODE_DOSEN and NIM = ‘9961001’

Lanjutkan......

DASAR-DASAR SQL

SQL menyediakan peritah dan fungsi dalam jumlah yang cukup banyak untuk menunjang aktifitas yang berhubungan dengan penelitian dan manipulasi data pada DBMS. Berikut ini akan diuraikan mengenai dasar-dasar SQL;

 JENIS DEKLARASI PADA SQL

Deklarasi atau perintah dalam SQL dikategorikan menjadi dua yaitu DDL ( data definition language ) dan DML ( data manipulation language ), kategori ini didasarkan pada karakteristik dan fungsi dari masing-masing.

A. DDL ( data definition language )
DDL adlah bagian dari SQL yang digunakan untuk mendefinisikan data dan obyek pada basis data. Perintah-perintah yang tergolong pada kategori ini adalah:

DASAR-DASAR SQL

SQL menyediakan peritah dan fungsi dalam jumlah yang cukup banyak untuk menunjang aktifitas yang berhubungan dengan penelitian dan manipulasi data pada DBMS. Berikut ini akan diuraikan mengenai dasar-dasar SQL;

 JENIS DEKLARASI PADA SQL

Deklarasi atau perintah dalam SQL dikategorikan menjadi dua yaitu DDL ( data definition language ) dan DML ( data manipulation language ), kategori ini didasarkan pada karakteristik dan fungsi dari masing-masing.

A. DDL ( data definition language )
DDL adlah bagian dari SQL yang digunakan untuk mendefinisikan data dan obyek pada basis data. Perintah-perintah yang tergolong pada kategori ini adalah:

PERINTAH KETERANGAN
CREATE TABLE
CREATE INDEX
ALTER TABLE
DROP TABLE
DROP INDEX
GRANT Membuat tabel
Membuat index
Mengubah atau menyisipkan kolom ke tabel
Menghapus tabel dari basis data
Menghapus index
Memberi izin akses pada pemakai

B. DML ( data manipulation language )
DML adalah bagian dari SQL yang digunakan untuk memulihkan dan memanipulasi data. Perintah ini digunakan untuk memberikan query dan perubahan yang dilakukan di dalam tabel. Perintah-perintah yang tergolong dalam kategori ini adalah :

PERINTAH KETERANGAN
SELECT

INSERT
DELETE
UPDATE
COMMIT
ROLLBACK Perintah utama dari SQL. Digunakan untuk memilih data dari tabel
Menyisipkan baris pada tabel
Menghapus baris pada tabel
Mengubah isi kolom pada tabel
Menuliskan perubahan pada disk
Membatalkan perubahan dari perintah COMMIT

 TIPE-TIPE DATA

Tipe data digunakan ketika membuat suatu tabel, pemakai harus menentukan informasi tertentu pada saat pembuatan tabel. Ada beberapa tipe data yang disimpan dalam basis data, diantaranya adalah :

INTEGER KETERANGAN
BIT
INT

SMALLINT
TINYINT
DECIMAL / NUMERIC
MONEY


SMALLMONEY

FLOAT
REAL
DATETIME
SMALLDATETIME Integer dengan niali 0 atau 1
Nilai interger antara –2.147.483.648 s/d 2.147.483.647
Nilai antara –32.768 s/d 32.767
Nilai antara 0 s/d 255
Akurasi angka tetap antara –10^38-1s/d 10^38-1
Data moneter dari –2^63 s/d 2^63-1, dengan tingkat akurasi hingga sepersepuluh ribu unit moneter
-214.748,3648 s/d 214.748,3647 dengan tingkat akurasi sepersepuluh ribu unit moneter
-1.79E+308 s/d 1.79E+308
-3.40E+38 s/d 3.40E+38
1 januari 1753 s/d 31 desember 9999
1 januari 1900 s/d 6 juni 2079

RUPA-RUPA KETERANGAN
CURSOR
TIMESTAMP
UNIQUEIDENTIFIER Referensi ke kursosr
Angka eklusif yang dikenali oleh basas data
Pengenal global yang eklusif

STRING KETERANGAN
CHAR
VARCHAR
TEXT Field tetap dengan ukuran max 8000 byte
Field tetap dengan ukuran max 8000 byte
Variabel dengan ukuran 2^31-1 byte


UNICODE STRING KETERANGAN
NCHAR
NVARCHAR

NTEXT Karakter unicode dengan ukuran 4000 byte
Karter unicode dengan ukuran berfariasi 4000 byte
Variaber berukuran 2^30-1 byte

BINARY STRING KETERANGAN
BINARY
VARBINARY
IMAGE Ukuran tetap hingga 8000 byte
Ukuran bervariasi 8000 byte
Ukuran bervariasi hingga 2^31-1 byte


 EKSPRESI DAN OPERATOR
Pada SQL operator bertindak berdasarkan operand, yaitu elemen yang dianalisa oleh operator. Terdapat dua jenis operator, yaitu operator unary yang bertindak berdasarkan satu operand saja, dan operator binary yang bertindak berdasarkan dua atau lebih operator. Apabila pada sebuah ekspresi terdapat lebih dari satu operator, maka operator-operator tersebut akan dievaluasi berdasarkan urutan sebagai berikut ;

• + ( positif ), - ( negatif ), ~ ( bitwise NOT )
• * ( perkalian ), / ( pembagian ), % ( modulus )
• + ( penjumlahan ), + ( penggabungan ), - ( pengurangan )
• +, >, <, >=, <=, <>, !=, !>, !< • ^ ( bitwise exclusive OR ), & ( bitwise AND ), | ( bitwise OR ) • NOT • AND • ALL, ANY, BETWEEN, IN, LIKE, OR, SOME • = ( penugasan )

Lanjutkan......

PERKEMBANGAN BASIS DATA SAAT INI

Sejak tahun 1960-an penggunaan basis data sudah digunakan untuk bidang
komersial, dimana pemrosesan file-nya masih berbasis manajemen file tradisional.
Perkembangan komputer yang semakin pesat diikuti dengan perkembangan
perangkat lunak untuk aplikasi bisnis, sejak tahun 1970-an sampai awal tahun 1980
manajemen berbasis file tradisional berkembang menjadi manajemen basis data.
Di dalam manajemen basis data dikenal berbagai model data yang dapat
digunakan untuk mendeskripsikan sebuah data dalam merancang suatu basis data.
Manajemen ini memungkinkan banyak user untuk mengakses data secara
bersamaan sehingga fasilitas yang dimiliki oleh manajemen sudah semakin banyak
yaitu fasilitas pemanipulasian data, kontrol konkurensi data, recovery data,
keamanan data dan didukung dengan fasilitas komunikasi data karena manajemen
ini sudah terhubung dengan suatu jaringan .
PERKEMBANGAN BASIS DATA SAAT INI

Sejak tahun 1960-an penggunaan basis data sudah digunakan untuk bidang
komersial, dimana pemrosesan file-nya masih berbasis manajemen file tradisional.
Perkembangan komputer yang semakin pesat diikuti dengan perkembangan
perangkat lunak untuk aplikasi bisnis, sejak tahun 1970-an sampai awal tahun 1980
manajemen berbasis file tradisional berkembang menjadi manajemen basis data.
Di dalam manajemen basis data dikenal berbagai model data yang dapat
digunakan untuk mendeskripsikan sebuah data dalam merancang suatu basis data.
Manajemen ini memungkinkan banyak user untuk mengakses data secara
bersamaan sehingga fasilitas yang dimiliki oleh manajemen sudah semakin banyak
yaitu fasilitas pemanipulasian data, kontrol konkurensi data, recovery data,
keamanan data dan didukung dengan fasilitas komunikasi data karena manajemen
ini sudah terhubung dengan suatu jaringan .
Perkembangan dunia usaha semakin meningkat ditunjang dengan perkembangan
komunikasi yang mempermudah organisasi atau perusahaan untuk mengakses data,
sehingga mengubah manajemen basis data menjadi manajemen basis data tingkat
lanjut didukung dengan fasilitas data warehousing dan fasilitas basis data berbasis
web sebagai salah satu strategi organisasi dalam meningkatkan kinerja dan
keuntungan organisasi.

A. ORDBMS

A.1. ORDBMS (Object Relational Database Management System)
Penggunaan teknologi RDBMS pada awalnya sangat dominan, tetapi
dikarenakan fasilitas–fasilitas yang ada pada RDBMS tidak lagi sesuai
dengan aplikasi tingkat lanjut, maka RDBMS digantikan dengan
OODBMS. Pada OODBMS terdapat banyak sekali bentuk-bentuk object
oriented seperti metode encapsulation, inheritance, polymorphism, dll.
Model data relasional lanjutan tidak hanya ada satu , tetapi terdapat
berbagai macam model data, dimana karakteristik dan tingkat kebutuhan
data yang telah dibuat. Bagaimanapun semua model data yang akan
digunakan mengacu pada konsep objek dan mempunyai kemampuan
untuk menyimpan data di dalam database.
Berbagai macam terminologi yang digunakan untuk sistem model
relasional tingkat lanjut yaitu ERDBMS. Tapi sekarang ini untuk sistem
berbasis objek dapat digunakan OODBMS.
Inti dari kinerja RDBMS yaitu ada pada optimasi queri-nya dan juga
pengetahuan mengenai bagaimana mengeksekusi fungsi dari user-define
secara efisien, mengambil keuntungan dari pengindeksan pada struktur
yang baru, memetakan queri dengan cara baru, dan menavigasi antara
data menggunakan referensi data.
Penggunaan OODBMS untuk suatu organisasi yang sangat besar dan
universal tidak lagi sesuai sehingga untuk mendukung kinerja dari
organisasi tersebut dibutuhkan suatu ORDBMS (Objeck Relational
Database Management System).
ORDBMS memiliki fasilitas untuk mendefinisikan data yang kompleks,
menspesialisasikan struktur indeks dibutuhkan untuk mengefisienkan
pengambilan data. ORDBMS digunakan untuk dua sampai tiga
dimensional data.
A.2. Perbandingan antara OODBMS dan ORDBMS
Pemodelan Data
Model OODBMS ORDBMS
Identitas Objek ada Ada dengan tipe REF
(Refferences)
Pengkapsulan Ada, tapi tidak dapat
digunakan untuk queri
Ada dengan UDT (User
Defined Types)
Penurunan Ada Ada (dipisahkan antara
UDT dan Table)
Polymorphism Ada, sebagai object
oriented pada model bahasa
pemrograman
Ada
Objek kompleks Ada Ada, dengan UDT
Relasi Ada Sangat mendukung untuk
mendefinisikan batasan
referensial integritas
B. Data Warehousing
B.1. Konsep Data Warehousing
Konsep dasar dari data warehousing adalah informasi yang dikumpulkan
dalam suatu gudang penyimpanan dan merepresentasikan solusi untuk
pengaksesan data didalam sistem non relasional. Sehingga data
warehousing dapat disebut sebagai database yang berorientasi pada
subyek, terintegrasi, mempunyai Time Variant dan bersifat non volatile
untuk kumpulan data yang mendukung dalam pengambilan keputusan.
• Berorientasi subyek artinya mengatur semua subyek utama pada
suatu organsisasi yang memfokuskan pada basis datanya bukan pada
aplikasi yang digunakan untuk pengambilan keputusan.
• Terintegrasi artinya pemakaian data bersama-sama sering
menyebabkan data tidak konsisten sehingga cara pandang user
terhadap data menjadi tidak sama. Agar terintegrasi pembentukan
sumber data harus standar dan konsisten.
• Time Variant, data yang ada pada gudang hanya valid dan akurat
pada titik waktu tertentu atau interval tertentu.
• Non-volatile, data tidak di-update secara real time tetapi selalu
diperbaharui dari sistem operasi pada database yang ada.
B.2. Keuntungan dari Data Warehousing
1. Hasil yang diperoleh dari investasi lebih tinggi
2. Kompetitif
3. Meningkatkan produktivitas perusahaan
Sistem Basis Data
Perkembangan Database Saat Ini Hal 4 dari 5
Jenis database yang tersimpan di dalam media penyimpanan data berdasarkan
penggunaan data :
• Database yang memiliki data sering di-update disebut data OLTP (Online
Transaction Processing). Data OLTP sering juga disebut data operasional,
mencerminkan sifat aplikasi database yang dinamik.
• Database yang memiliki data sering digunakan untuk query disebut DSS
(Decision Support System). Data DSS sering disebut data analitikal,
mencerminkan sifat aplikasi database yang relatif statik.
Data Operasional Data DSS
Berorientasi pada aplikasi : data
digunakan untuk proses bisnis. Sebagai
contoh : sistem perbankan dengan file
terpisah yang sudah dalam bentuk
normal untuk setiap proses bisnis.
Berorientasi pada subyek : data
digunakan untuk subyek bisnis, misal
informasi nasabah. Data dalam bentuk
denormalisasi dimana sebuah record
dapat meliputi keseluruhan proses bisnis.
Data terperinci Data ringkas
Struktur statik Struktur dinamik
Target operator komputer Target pengambil keputusan pada
seluruh tingkatan
Volatile (data dapat diubah) Non volatile (data tidak bisa diubah
setelah dimasukkan)
Kebutuhan data selalu diketahui sebelum
rancangan sistem
Kebutuhan data sama sekali tidak
diketahui sebelum rancangan sistem
Mengikuti siklus hidup pengembangan
klasik dimana iterasi rancangan
diselesaikan melalui normalisasi data,
dan memeriksa kebutuhan pemakai
Siklus hidup pengembangan sama sekali
berbeda, dimana pemakai menggunakan
aplikasi struktur data yang ada dan
membuat rancangan siap untuk dianalisis
Performansi penting karena jumlah
pemakai konkuren sangat besar dalam
mengakses data
Masalah performansi lebih longgar
Karena jumlah pemakai jauh lebih sedikit
dalam mengakses data sehingga tidak
ada masalah konkuren yang perlu
diperhatikan.
Penggerak-transaksi (Transaction-driven) Penggerak-analisis (Analysis-driven)
Data harus selalu tersedia untuk pemakai
akhir (back up dan recovery harus
terencana dengan baik)
Tidak mempunyai tingkat kebutuhan
ketersediaan data yang sama
(perencanaan back up dan recovery lebih
longgar)
Mencerminkan situasi mutakhir Mencerminkan nilai historis
C. Data Mart
Untuk mencapai suatu data warehouse kelihatannya merupakan suatu
tantangan besar dan memang demikian. Bahkan begitu besarnya sehingga
beberapa pakar menyarankan pendekatan yang lebih sederhana yaitu
menerapkan sesuatu yang dinamakan data mart. Data mart adalah database
yang berisikan data yang menjelaskan satu segmen operasi perusahaan.
Misalnya perusahaan mungkin memiliki data mart pemasaran, data mart smber
daya manusia, dsb.
Sistem Basis Data
Perkembangan Database Saat Ini Hal 5 dari 5
D. Data Mining
Istilah yang sering digunakan bersama-sama dengan data warehouse dan data
mart adalah data mining. Data mining adalah proses menemukan hubungan
dalam data yang tidak diketahui oleh pemakai. Data mining membantu pemakai
dengan mengungkapkan berbagai hubungan dan menyajikannya dengan suatu
cara yang dapat dimengerti sehingga dapat menjadi dasar pengambilan
keputusan. Data mining memungkinkan pemakai “menemukan pengetahuan”
pada database yang dalam sepengetahuannya tidak ada.
Contoh Data Mining :
Sebuah bank telah memutuskan untuk menawarkan reksadana kepada para
pelanggannya. Manajemen bank ingin mengarahkan materi promosi pada
segmen pelanggan yang memberikan potensi bisnis terbesar.
• Data Mining Berdasarkan Verifikasi. Pendekatan yang dilakukan oleh
para manajer adalah mengidentifikasi karakteristik yang mereka yakin
dimiliki oleh pasar sasaran. Misalkan para manajer ingin mengarah pada
pasangan muda, berpenghasilan ganda, dan kaya. Query dapat
dimasukkan ke dalam DBMS, dan catatan yang tepat dapat dipanggil.
Pendekatan yang seperti itu, yang mulai dengan hipotesis pemakai tentang
bagaimana data tersebut terstruktur, disebut data mining berdasarkan
verifikasi (verification-driven data mining). Kekurangan pendekatan ini
adalah proses pemanggilan kembali diarahkan sepenuhnya oleh pemakai.
Informasi yang dipilih tidak lebih baik daripada pandangan pemakai
terhadap data tersebut. Ini merupakan cara tradisional untuk bertanya pada
database.
• Data Mining Berdasarka Penemuan. Pendekatan lain memungkinkan
sistem data mining mengidentifikasi pelanggan terbaik untuk promosi
tersebut. Sistem itu menganalisis database, mencari kelompok-kelompok
dengan karakteristik umum. Dalam contoh bank, sistem data mining
mungkin mengidentifikasi bukan hanya kelompok pasangan muda lulusan
universitas tetapi juga pasangan yang sudah pensiun yang bergantung
pada jaminan sosial dan pensiun. Sistem data mining dapat melaksanakan
analisis selangkah lebih jauh, dengan merekomendasikan satu set promosi
yang diarahkan pada kedua kelompok tersebut.
• Kombinasi Data Mining Verifikasi dan Penemuan. Perkembangan data
mining di masa depan akan mengkombinasikan pendekatan hipotesis dan
penemuan. Perkembangan ini menggunakan penalaran yang sama yang
mendasari konsep Sistem Pendukung Keputusan (Decision Support
System – DSS). Konsep tersebut memungkinkan pemakai dan komputer
bekerja sama untuk memecahkan suatu masalah. Pemakai menerapkan
keahliannya dalam hal masalah, dan komputer melakukan analisis data
yang canggih untuk memilih data yang tepat dan menempatkannya dalam
format yang tepat untuk pengambilan keputusan.

Lanjutkan......