Materi 4

By: Cha-Cha D AceWell

Input Data ke dalam Tabel

Prasyarat :
  • Anda sudah membaca dan menjalankan perintah-perintah yang ada di Materi 3 tentang Membuat Tabel dan Mendefinisikan Constraint
Perintah INSERT
Untuk mengisi data ke tabel digunakan perintah INSERT. Syntax perintah INSERT adalah sebagai berikut :
INSERT INTO table [(column [, column…])]
VALUES (value [, value…]);
Sebelum melakukan pengisian data dengan perintah INSERT, kita harus lihat dulu strukutr tabel yang akan kita isi, karena urutan kolom dalam perintah INSERT sangat penting.
Lakukan koneksi ke database dengan user HRD
SQL> connect hrd
Enter password: ******
Connected.
Lihat, tabel apa saja yang dimiliki oleh user HRD
SQL> SELECT table_name
2  FROM user_tables;
TABLE_NAME
------------
PEGAWAI
BAGIAN
Lihat struktur tabel BAGIAN dan PEGAWAI
SQL> desc BAGIAN
Name              Null?    Type
----------------- -------- ------------
KODE                       NUMBER(2)
NAMA_BAGIAN                VARCHAR2(20)

SQL> desc PEGAWAI
Name              Null?    Type
----------------- -------- ------------
NIP                        NUMBER(4)
NAMA                       VARCHAR2(15)
JK                         CHAR(1)
EMAIL                      VARCHAR2(20)
GAJI                       NUMBER(10)
KODE_BAG                   NUMBER(2)
Input data dengan urutan kolom sesuai dengan struktur tabel
Isi tabel BAGIAN dengan data kode : 10, nama_bagian : ADMINISTRATION
SQL> INSERT INTO bagian(kode,nama_bagian) VALUES(10,’ADMINISTRASI’);
1 row created.
Sebenarnya jika kita akan memasukkan data dan kita sudah mengetahui struktur tabelnya dan data tersebut akan diinput urut sesuai nama kolom, maka nama kolom tidak perlu disebutkan. Dengan demikian maka penulisan perintah INSERT menjadi lebih sederhana, seperti dibawah ini :
SQL> INSERT INTO bagian VALUES(20,’MARKETING’);
1 row created.
Input data untuk kolom tertentu saja
Nama kolom perlu disebutkan jika kita akan mengisi nilai hanya ke beberapa kolom saja. Misalkan isi data PEGAWAI untuk kolom NIP: 100 NAMA: ‘EDWIN’, maka perintah INSERT ditulis sebagai berikut:
SQL> INSERT INTO pegawai (nip,nama) VALUES(100,’ANTON’);
1 row created.
Untuk kolom lain pada baris tersebut akan diisi dengan NULL(kosong).
Jika kita lihat, dengan menggunakan perintah INSERT untuk menginput satu baris data diperlukan satu perintah INSERT. Sebenarnya masih ada beberapa utility lain di Oracle yang bisa digunakan untuk memasukkan data ke tabel seperti External Table, SQL*Loader dan Data Pump. Utility itu nanti akan dibahas pada bagian tersendiri.
Untuk latihan dan nanti akan digunakan untuk materi selanjutnya, isi tabel BAGIAN dan PEGAWAI dengan data berikut :
-- isi tabel BAGIAN
insert into bagian values(10,'Administrasi');
insert into bagian values(11,'Penjualan');
insert into bagian values(12,'Gudang');
-- isi data pegawai
insert into pegawai values(1000,'WIRA', 'L',null,7000000,10);
insert into pegawai values(1100,'BUDI', 'L',null,5000000,12);
insert into pegawai values(1200,'ERTIN', 'P',null,4250000,10);
insert into pegawai values(1300,'NOVI', 'P',null,5500000,11);
insert into pegawai values(1201,'AHMAD', 'L',null,2575000,10);
insert into pegawai values(1202,'ESTI', 'P',null,3000000,10);
insert into pegawai values(1305,'EDWIN', 'L',null,3250000,11);
insert into pegawai values(1306,'AMRA', 'L',null,3100000,11);
insert into pegawai values(1101,'TONO', 'L',null,2250000,12);
insert into pegawai values(1102,'SUTEJO','L',null,2750000,12);
insert into pegawai values(1301,'DIANA', 'P',null,3000000,11);
insert into pegawai values(1302,'YULI', 'P',null,2750000,11);
insert into pegawai values(1303,'RINA', 'P',null,3100000,11);
insert into pegawai values(1304,'DHILA', 'P',null,2500000,11);
insert into pegawai values(1103,'ZAENAL','L',null,1800000,12);
commit;
/
Materi tentang input data selesai.

Materi 3

By: Cha-Cha D AceWell

Membuat Tabel dan Mendefinisikan Constraint

Prasyarat :
  • Instalasi Software Oracle database sudah berhasil, jika belum silahkan install dengan mengikuti petunjuk Instalasi Oracle Database
  • Anda sudah membuat database Oracle, jika belum buat database dengan mengikuti petunjuk Membangun Database
  • Sebaiknya anda baca Materi 2 tentang User dan Schema
Membuat Tabel
Ingat, di materi 2 Anda sudah membuat user/schema HRD. Disini kita akan coba membuat dua tabel sederhana untuk menyimpan data-data pegawai yaitu tabel BAGIAN dan tabel PEGAWAI. Rancangan tabel dibuat seperti berikut :
Tabel HRD 
sederhana
Login ke database sebagai user HRD.
SQL> CONNECT budi
Enter password: ******
Connected.
Buat tabel PEGAWAI dan BAGIAN
SQL> CREATE TABLE PEGAWAI
2 NIP NUMBER(4)
3 NAMA VARCHAR2(15),
4 JK CHAR(1),
5 EMAIL VARCHAR2(20),
6 GAJI NUMBER(10),
7 KODE_BAG NUMBER(2));
SQL> CREATE TABLE BAGIAN
2 (KODE NUMBER(2),
3 NAMA_BAGIAN VARCHAR2(20));
Mendefinisikan Constraint
Constraint adalah batasan atau ketentuan yang diterapkan di tabel untuk menjaga konsistensi dan integritas data. Ada 5 jenis constraint di Oracle, yaitu :
  • Primary Key
  • Unique
  • Not Null
  • Check
  • Foreign Key
Penggunaan dan cara mendefinisikan constraint adalah sebagai berikut:
Primary key
Defenisikan kolom NIP pada tabel PEGAWAI sebagai primary key.
SQL> ALTER TABLE PEGAWAI
 2 ADD CONSTRAINT PK_PEGAWAI PRIMARY KEY (nip);
Defenisikan kolom KODE pada tabel BAGIAN sebagai primary key.
SQL> ALTER TABLE BAGIAN
 2 ADD CONSTRAINT PK_BAGIAN PRIMARY KEY (kode);
Not Null
Definisikan kolom NAMA pada tabel PEGAWAI harus selalu diisi (Not Null)
SQL> ALTER TABLE PEGAWAI
 2 MODIFY nama NOT NULL;
Check
Definisikan kolom JK (jenis kelamin) pada tabel PEGAWAI hanya boleh diisi oleh ‘L’ dan ‘P’
SQL> ALTER TABLE PEGAWAI
 2 ADD CONSTRAINT ck_jk CHECK (JK IN (’L’,’P’));
Pastikan kolom GAJI pada tabel PEGAWAI minimal 1000000
SQL> ALTER TABLE PEGAWAI
 2 ADD CONSTRAINT ck_gaji_1jt CHECK (GAJI >= 1000000);
Unique
Pastikan data untuk kolom EMAIL pada tabel PEGAWAI tidak boleh ada yang sama (Unique)
SQL> ALTER TABLE PEGAWAI
 2 ADD CONSTRAINT UQ_EMAIL UNIQUE(email);
Foreign Key
Definisikan agar kolom KODE_BAG pada tabel PEGAWAI selalu merujuk ke kolom KODE pada tabel BAGIAN. (pendefinisian Foreign Key)
SQL> ALTER TABLE PEGAWAI
 2 ADD CONSTRAINT fk_kode_bag FOREIGN KEY (kode_bag)
 3* REFERENCES bagian(kode);
Bahasan Create table dan Constraint selesai…….

Download Disini

Materi 2

By: Cha-Cha D AceWell

User dan Schema Database


Konsep
Setiap orang yang akan mengakses ke suatu database Oracle harus memiliki database user account atau biasa dikenal dengan user name. Pada database Oracle, user ada didalam database artinya user merupakan bagian dari suatu database. Berbeda dengan konsep user yang ada di database lain seperti MySQL atau SQL Server 2000, pada kedua database tersebut user ada diluar database. Ilustrasi perbedaan konsep user antara database Oracle dengan database MySQL atau SQL Server 2000 bisa dilihat pada gambar berikut:
Konsep User dan Schema di database Oracle
Jadi agar user bisa mengakses ke database database dibuat dulu user account-nya. User yang berhak membuat user account adalah user SYS atau user SYSTEM. User SYS dan SYSTEM adalah user yang sudah ada di dalam database dan mempunyai wewenang untuk melakukan administrasi database. User SYS dan SYSTEM dibuat bersamaan dengan proses membuat database. Jadi begitu anda selesai membuat database atomatis sudah ada user SYS dan SYSTEM.
Perhatikan lagi gambar diatas, dalam satu database akan terdapat banyak user dan setiap user akan mempunyai banyak objek seperti tabel, indek, trigger, procedure dan function. Pengelompokan objek-objek secara logik di dalam database berdasarkan user pemiliknya disebut schema. Jadi setiap user pasti punya schema, schema atomatis terbentuk ketika user dibuat. Satu user hanya dihubungkan ke satu schema dan nama user sama dengan nama schema. Berarti user dan schema adalah hal yang sama.
Pemahaman lebih kanjut, secara logik user atau schema di database Oracle sebenarnya sama dengan apa yang disebut database di My SQL atau SQL Server 2000.
Kapan kita harus membuat user atau schema ?. Berdasarkan konsep diatas, user dan schema dibuat ketika ingin membangun suatu aplikasi. Sebagai contoh, ketika Anda ingin membuat aplikasi Sistem Informasi Kepegawaian atau HRD sebaiknya buat user atau schema dengan nama HRD (Masalah nama schema terserah Anda, tetapi sebaiknya mencerminkan nama aplikasi). Selanjutnya semua tabel dan object database lain yang berkaitan dengan aplikasi Sistem Informasi Kepegawaian akan di simpan di schema HRD.
Membuat User/Schema
Ingat, tadi sudah disebutkan bahwa yang berhak untuk membuat user adalah user SYS atau SYSTEM atau user yang sudah diberi privilege untuk CREATE USER (tentang privilige akan dibahas tersendiri). Lakukan koneksi ke database sebagai user SYS.
1. Pada form login SQL*Plus, ketik sebagai berikut:
atau pada prompt SQL> ketik :
SQL> connect / as sysdba
Connected.
2. Buat user/schema HRD dengan password ORACLE
SQL> CREATE USER hrd
 2 IDENTIFIED BY oracle
 3 DEFAULT TABLESPACE users
 4 QUOTA 10 M ON users;
3. Beri ijin user HRD untuk login ke database, buat tabel dan buat index
SQL> GRANT CREATE SESSION,
 2 CREATE TABLE,
 3 CREATE INDEXTYPE
 4 TO hrd;
4. Lakukan koneksi ke database menggunakan user account HRD
SQL> CONNECT hrd
 Enter password: ******
 Connected.
SQL> show user
 USER is “HRD”
Materi User dan Schema selesai, Terima kasih.

Materi 1

By: Cha-Cha D AceWell

Relational Database dan RDBMS 


Sebelum membahas berbagai jenis perintah SQL akan lebih baik kalau kita bicara tentang Relational Database dan Relational Database Management System atau biasa dikenal dengan RDBMS.
Relational Database sebenarnya adalah salah satu konsep penyimpanan data, sebelum konsep database relasional muncul sebenarnya sudah ada dua model database yaitu Network Database dan Hierarchie Database. Dalam database relasional, data disimpan dalam bentuk relasi atau tabel dua dimensi, dan antar tabel satu dengan tabel lainnya terdapat hubungan atau relationship, sehingga sering kita baca diberbagai literatur, database didefinisikan sebagai “kumpulan dari sejumlah tabel yang saling hubungan atau keterkaitan”. Nah, kumpulan dari data yang diorganisasikan sebagai tabel tadi disimpan dalam bentuk data elektronik di dalam hardisk komputer. Untuk membuat struktur tabel, mengisi data ke tabel, mengubah data jika diperlukan dan menghapus data dari tabel diperlukan software. Software yang digunakan membuat tabel, isi data, ubah data dan hapus data disebut Relational Database Management System atau dikenal dengan singkatan RDBMS sedangkan perintah yang digunakan untuk membuat tabel, isi, ubah dan hapus data disebut perintah SQL yang merupakan singkatan dari Structure Query Language. Jadi, setiap software RDBMS pasti bisa digunakan untuk menjalankan perintah SQL.
Sebenarnya fungsi RDBMS bukan cuma buat tabel, isi data, ubah dan hapus data, untuk manajemen data dalam skala besar dan agar bisa mendukung proses bisnis yang kontinyu dan real time suatu RDBMS dituntut untuk mempunyai kemampuan manajemen user dan keamanan data, backup dan recovery data serta kemampuan lainnya yang berkaitan dengan kecepatan pemrosesan data (performance).
Salah satu software RDBMS yang ada dipasaran saat ini dan cukup banyak digunakan adalah Oracle Database.
Berinteraksi dengan Database Oracle
Untuk mengakses data yang ada di database digunakan perintah SQL, perintah-perintah SQL ini ditulis atau diinput dengan tools yang sudah disediakan oleh Oracle yaitu SQL*PLus, iSQL*Plus dan SQL Developer.Perintah SQL dikelompokkan berdasarkan fungsinya sebagai berikut:
Perintah untuk pendefinisian/pembuatan objek (Data Definition Language / DDL)
  • CREATE
  • ALTER
  • RENAME
  • DROP
  • TRUNCATE
Perintah untuk menampilkan data (Data Retrieval)
  • SELECT
Perintah untuk memanipulasi data (Data Manipulation Language /DML)
  • INSERT
  • UPDATE
  • DELETE
  • MERGE
Perintah untuk mengontrol transaksi (Transaction Control Language /TCL)
  • COMMIT
  • ROLLBACK
  • SAVEPOINT
Perintah untuk mengatur wewenang atau privilege ( Data Control Language /DCL)
  • GRANT
  • REVOKE
Sekian bahasan tentang Relational Database dan RDBMS.

Melakukan perintah DML (Data Manipulation Language)

By: Cha-Cha D AceWell

Untuk melakukan manipulasi atau pengolahan data dalam suatu table digunakan perintah DML. Macam-macam dari perintah DML adalah:
1. Insert : untuk memasukkan / menambahkan data baru
INSERT INTO nama_table (nama_kolom) values (values);
contoh –>
insert into mahasiswa (nim, nama, alamat, jurusan) values (12345,’andhi’,’yogya’,’informatika’);
keterangan:
insert into –> perintah untuk menambah data
mahasiswa –> nama table yang akan ditambahkan datanya
nim, nama, alamat, jurusan –> nama kolom dari table mahasiswa
12345,’andhi’,’yogya’,’informatika’ –> data yang dimasukkan ke dalam table mahasiswa (sesuai dengan urutan kolom yang telah disebutkan sebelumnya)
nb: untuk data yang bertipe karakter harus diapit tanda petik tunggal (‘ ‘)
2. Select : untuk menyeleksi / memilih data yang akan ditampilkan
SELECT * | {nama_kolom} FROM nama_table [WHERE condition];
contoh –>
select nim, nama, jurusan from mahasiswa;
keterangan: perintah di atas menampilkan data nim, nama dan jurusan pada table mahasiswa.
nb: untuk menampilkan semua kolom dapat menggunakan tanda (*) contoh: select * from mahasiswa, sedangkan jika ada syarat/kondisi untuk data yang akan ditampilkan dapat menggunakan klausa where contoh: select nim, nama from mahasiswa where nama=’andhi’;
3. Update : untuk membperbaharui data yang sudah ada
UPDATE nama_table SET nama_kolom = value [WHERE condition];
contoh –>
update mahasiswa set jurusan =’kedokteran’ where nama=’andhi’;
keterangan: perintah di atas akan mengubah data mahasiswa yang bernama andhi dengan mengganti data pada kolom jurusan, yang sebelumnya informatika menjadi kedokteran.
Nb: kita dapat mengubah lebih dari satu kolom dalam satu perintah update contoh: update mahasiswa set nim=45678, jurusan=’kedokteran’ where nama=’andhi’;
Perhatian : Jika kita tidak menggunakan klausa where maka semua baris pada kolom yang akan di update akan berubah.
4. Delete : untuk menghapus baris data
DELETE [FROM] nama_table [ WHERE condition];
contoh –>
delete mahasiswa where nama=’andhi’;
keterangan: perintah di atas menghapus baris data pada tabel mahasiswa yang bernaa andhi
Perhatian : Jika tidak menggunakan klausa where maka semua baris data pada tabel tersebut akan dihapus.

Algoritma Menghitung nilai mahasiswa

By: Cha-Cha D AceWell

Berikut adalah algoritma cara menghitung nilai mahasiswa akhir semester:
program Menghitung_Nilai_Akhir_Mahasiswa;
uses crt;
var nama,mata_kuliah: string;
tugas,UTS,UAS,nilai: integer;
Nilai_Akhir: real;
begin
clrscr;
writeln;
writeln(' PROGRAM MENGHITUNG NILAI AKHIR MAHASISWA ');
writeln('^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^');
writeln;
writeln(' Masukkan Identitas Diri!');
write(' Nama : ');
readln(nama);
write(' NIM : ');
readln;
write(' Kelas : ');
readln;
write(' Mata Kuliah : ');
readln(mata_kuliah);
write(' Alamat : ');
readln;
writeln;writeln;
write(' > Masukkan Nilai Tugas : ');
readln(tugas);
write(' > Masukkan Nilai UTS : ');
readln(UTS);
write(' > Masukkan Nilai UAS : ');
readln(UAS);
writeln;
Nilai:=25*tugas+25*uts+50*uas;
write(' Jumlah Nilai anda adalah : ',nilai);
writeln;
nilai_akhir:=nilai/100;
write(' NILAI AKHIR ANDA = ',nilai_akhir:0:2);
writeln;
writeln;
case nilai of
0..2500 : writeln(' Astaghfirullah ',NAMA,'. NILAI ANDA adalah E ');
2600..3900 : writeln(' MAAF ',NAMA,'. NILAI ANDA = D . ');
4000..6500 : writeln(' ',NAMA,'. NILAI ANDA = C ');
6600..7900 : writeln('',NAMA,'. NILAI ANDA = B ');
8000..10000: writeln('ALHAMDULILLAH ',nama,'. NILAI ANDA Adalah A.Pertahankan Prestasimu!!!');
else
writeln('Nilai anda tidak ditemukan');
end;
readln;
end.

(Hasilnya adalah sebagai berikut!)