Senin, 15 Oktober 2012

Pembuatan dan Manajemen Tabel

Pembuatan dan Manajemen Tabel

Sebuah tabel terdiri dari baris (row) dan kolom (column), dimana jumlah dan  nama kolom harus didefinisikan terlabih dahulu di awal. Sedangkan baris merupakan  sebuah variable yang dapat dihapus  dan diisi kapanpun, sehingga jumlahnya selalu  berubah sesuai dengan jumlah data didalamnya.  Setiap kolom dalam tabel mempunyai  tipe data, tipe data digunakan untuk membatasi jenis data yang bisa dimasukkan,  sehingga akan mempermudah dalam menggunakannya dan melakukan pengelolaan  selanjutnya. Sangat disarankan pada saat akan membuat tabel, sebaiknya membuat  sebuah konvensi khusus dalam penentuan tabel-tabel yang akan dibuat dan memberikan  nama kolom maupun tipe datanya.
Dalam Pembuatan Tabel:
  • Tabel harus memiliki primary key, artinya dalam pembuatan tabel haruslah terdapat sekelompok kolom  (field) yang menyebabkan setiap baris (record) dalam tabel  tersebut tidak sama.
  • Deklarasi primary key tidak boleh kosong (null), jadi kita harus mendeklarasikan  sebagai not null. Namun secara default PostgreSQL menganggapnya sebagai nullable (boleh kosong), jika waktu pengisian tidak menyebutkan null atau not null.
Struktur query untuk pembuatan table:
create table [nama_tabel] ([nama_kolo] [spasi] [type data] [spasi] [keterangan], primary key ([nama_kolom]));
Untuk melihat strukture tabel yang telah dibuat ketikan "\d".
Strukture query untuk menghapus table:
drop table [nama_table];
Untuk memanipulasi table terdapat beberapa strukture query.
- Strukture query yang digunakan untuk menghapus kolom:
ALTER TABLE [NAMA TABEL] DROP COLUMN “[NAMA KOLOM]”;
- Struktur query yang digunakan untuk menambah kolom:
ALTER TABLE [NAMA TABEL] ADD COLUMN “[NAMA KOLOM]”  [SPASI]
[TIPE_DATA] [SPASI] [KET];
- Struktur query yang digunakan untuk mengubah nama tabel :
ALTER TABLE [NAMA TABEL ASAL] RENAME TO [NAMA TABEL BARU];- Struktur query yang digunakan untuk mengubah nama kolom :
ALTER TABLE [NAMA TABLE] RENAME COLUMN “[NAMA KOLOM
ASAL]” TO [NAMA KOLOM BARU] ;
- Struktur query yang digunakan untuk menambahkan primary key pada tabel :
ALTER TABLE [NAMA TABEL] ADD PRIMARY KEY ([NAMA KOLOM]);
Temporary tabel sifatnya hanya sementara artinya akan aktif hanya ketika kita  sedang berada atau  login  ke database namun ketika kita  logout  dari  psql  database maka  secara otomatis temporary tabel akan terhapus.
Struktur query yang digunakan membuat tabel dengan dua kolom: 
CREATE TEMPORARY TABLE [NAMA TABEL] ([NAMA KOLOM] [SPASI]
[TIPE DATA] [SPASI] [KETERANGAN] , [NAMA KOLOM] [SPASI] [TIPE
DATA] [SPASI] [KETERANGAN]);
Pada saat membuat tabel pada user tertentu maka hanya user tersebut dan user  postgres yang dapat mengakses tabel itu. Namun jika kita ingin agar tabel yang telah  dibuat pada user kita dapat diakses oleh user tertentu atau semua user yang berada pada  PostgreSQL, maka semua itu dapat dilakukan dengan perintah GRANT. Jika ingin  mencabut hak akses kita bisa menggunakan perintah REVOKE.
Berikut struktur penggunaan GRANT  untuk semua hak akses :
GRANT ALL ON TABLE [NAMA TABEL] TO [NAMA USER];
Berikut struktur penggunaan REVOKE untuk semua hak akses :
REVOKE ALL ON TABLE [NAMA TABEL] FROM [NAMA USER];
Struktur query untuk menghapus salah satu hak akses, misalnya UPDATE :
REVOKE UPDATE ON TABEL [NAMA TABEL] FROM [NAMA USER];
Struktur query untuk memberi salah satu hak akses, misalnya DELETE :
GRANT DELETE ON TABEL [NAMA TABEL] TO [NAMA USER];
INHERITANCE dipergunakan jika ingin membuat sebuah tabel baru yang  berhubungan dengan tabel yang ada, dengan kata lain turunan tabel pertama.
Struktur penggunaan query INHERITANCE :
CREATE TEMPORARY TABLE [NAMA TABEL] ([NAMA KOLOM] [SPASI]
[TIPE DATA] [SPASI] [KETERANGAN] , [NAMA KOLOM] [SPASI] [TIPE
DATA] [SPASI] [KETERANGAN]) INHERITS (NAMA TABEL INDUK);
Dalam hal hubungan antar tabel, ada beberapa syarat yang harus terpenuhi seperti,  antara tabel yang ingin dihubungkan harus memiliki sebuah field dengan tipe data yang  sama. Dengan kata lain ada tabel yang memiliki  primary key  sebagai kunci untuk  menghubungkan ke tabel yang lain dimana terdapat field yang mempunyai tipe data yang  sama dengan kata lain yang disebut  foreign key.  Misalnya, terdapat tabel barang dan  macam_barang. Berikut query kedua tabel tersebut : 
CREATE TABLE barang (bar_id INTEGER NOT NULL, bar_nama
VARCHAR(15),  mac_id INTEGER NOT NULL  REFERENCE macam_barang,
PRIMARY KEY (bar_id, mac_id));
CREATE TABLE macam_barang (mac_id INTEGER NOT NULL, mac_nama
VARCHAR(15), mac_guna VARCHAR(40), PRIMARY KEY (mac_id));
Tugas Praktikum:
  1. Buatlah sebuah tabel dengan nama identitas dan dengan ketentuan sebagai berikut:


2.  Buatlah sebuah tabel lagi dengan nama pegawai dengan ketentuan seperti di nomor 1
3. Hapus kolom “ide_alamat” dan tampilkan struktur dari tabel pegawai tadi.
4. Tambahkan kolom “ide_pekerjaan” dan tampilkan struktur tabel pegawai.
5. Ubah nama tabel pegawai menjadi pekerja kemudian ubah  nama kolom “ide_pekerja”
menjadi “ide_alamat” dan tampilkan.
6. Berikan Primary key pada tabel pekerja. Kemudian tampilkan struktur tabel.
7. Hapus tabel identitas.
8. Buat temporary tabel dengan nama mahasiswa_sementara  dan tampilkan tabel atau
strukturnya. Kemudian log out user dan login kembali dan periksa kembali keberadaan
tabel temporary tadi.
9. Hapus semua hak akses tabel tertentu kepada salah satu user yang telah dibuat dan
lakukan pengecekan. Kemudian berikan semua hak akses kembali dan lakukan
pengecekan kembali.
10. Hapus hak akses SELECT tabel tertentu kepada salah satu user dan lakukan pengecekan.
11. Buatlah tabel Mahasiswa, Fakultas dan Jurusan. Buat  hubungan antar tabel dari ketiga
tabel tersbut.
Semoga Bermanfaat ^-^
Post By: Azil Moza


Membuat User dan Database dengan SQL shel (psql)


A. Landasan Teori
Suatu software basis data merupakan software yang digunakan untuk menyimpan dan memungkinkan data yang telah disimpan untuk diakses dengan perintah-perintah tertentu. Software basis data sering dikenal dengan sebutan DBMS (Database Management System). Perintah-perintah yang digunakan untuk mengelola basis data mempunyai standar yang disebut dengan SQL (Structured Query Language). Standar ini dibuat oleh suatu badan yang berwenang (ANSI) sehingga sering disebut juga dengan istilah ANSI SQL. Saat ini standar SQL yang diacu kebanyakan software adalah SQL92 dan SQL99. Pada umumnya, data yang tersimpan merupakan data relasional (data yang saling terhubung). Proses untuk merancang suatu basis data disebut dengan istilah normalisasi. Pada dasarnya, suatu basis data terdiri atas berbagai tabel yang saling terhubung. Tabel itu sendiri terdiri atas data rinci untuk suatu entitas dan terdiri atas row dan column (pada software non-SQL dan software basis data tertentu sering disebut record dan field).
Tabel itu sendiri jika digambarkan merupakan suatu baris serta kolom sebagai berikut:
no_mhs nama lahir         tgllahir      alamat
002345 Zaky Yogyakarta 3-3-2000 Griya Purwa Asri H304
002346 Ahmad Jakarta 21-12-1978 Kenari II/37 Salemba
002347 Aditya Jakarta 25-08-1972 Gedongkuning JG IV/16

Tentang PostgreSQL
PostgreSQL merupakan Sebuah Obyek-Relasional Data Base Management System (ORDBMS) yang dikembangkan oleh Berkeley Computer Science Department. PostgreSQL juga menawarkan tambahan-tambahan yang cukup signifikan yaitu class, inheritance, type, dan function. Tambahan keistimewaan lain yang tidak dimiliki database management system yang lain berupa constraint, triggers, rule, dan transaction integrity, dengan adanya feature (keistimewaan) tersebut maka para pemakai dapat dengan mudah mengimplementasikan dan menyampaikan ystem ini. Secara umum PostgreSQL menyediakan dua interface, yaitu pgAdmin III sebagai Graphical User Interface (GUI) dan SQL Shell (psql) sebagai Command Line Interface (CLI).  Untuk menggunakan perintah dasar database kita bisa menggunakan keduanya, seperti membuat atau menghapus database dan query buffer. 
Contohnya kita akan membuat user melalui SQL Shell (psql):
- Setelah itu kita buat database baru:
- Kita cek database yang telah kita buat melalui pgAdminIII:
- Untuk menghapus database, ketikkan perintah berikut:
- Selanjutnya kita lakukan pengecekkan kembali, apakan database sudah berhasil terhapus:
Semoga Bermanfaat ^_^





Flowchart


Flowchart  adalah  penyajian yang  sistematis tentang proses dan logika dari  kegiatan  penanganan informasi  atau  penggambaran secara grafik dari langkah-langkah dan  urut-urutan  prosedur dari suatu program. Flowchart menolong analis dan  programmer untuk memecahkan  masalah kedalam segmen-segmen yang  lebih kecil dan menolong dalam menganalisis  alternatif-alternatif lain dalam pengoperasian.






Contoh Kasus:
Buatlah algoritma untuk  menghitung sisa bagi antara bilangan  dengan  2, apakah  sisa  ataukah  tidak sisa,jika sisa maka maka cetak genap jika tidak sisa maka cetak ganjil.
Gambar Flowchartnya: