tutorial singkat postgresql updatemaret2010

9
Tutorial PostgreSQL Modul I Pengenalan PostgreSQL 1. Introduction PostgreSQL adalah server basisdata tingkat tinggi yang open source dan juga freeware. PostgreSQL dikembangkan oleh tim Berkeley University of California pada tahun 1977-1985. Perkembangan PostgreSQL sangat cepat, setiap hari selalu di update oleh tim pengembang. Sampai hari ini PostgreSQL merupakan saingan dari server database lainnya yang komersil. Salah satu alasan mengapa memilih PostgreSQL sebagai server database ialah software tersebut open source. Pengembangan software open source tidak memerlukan perusahaan yang terstruktur sehingga factor ekonomi tidak membatasinya. Terdapat juga fasilitas feedback untuk user, user dapat melaporkan dengan cepat ketika terdapat bug dan fasilitas yang kurang pada software. Pendistribusian software ke user pun dengan cepat dapat dilakukan. 2. Basic SQL Command Untuk bisa mengikuti tutorial ini diasumsikan sudah memenuhi beberapa syarat, yaitu: a. PostgreSQL sudah terinstall berikut menjalankannya sebagai server. b. PgAdmin sudah terinstall (optional). SQL Command dapat ditulis dalam sebuah command line, juga dapat di lakukan dalam Query Tool pada aplikasi PgAdmin. Copyright 2010 By: IMG06049

Upload: franco-coco-sartori

Post on 30-Nov-2015

51 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Tutorial Singkat PostgreSQL UpdateMaret2010

Tutorial PostgreSQLModul I Pengenalan PostgreSQL

1. Introduction

PostgreSQL adalah server basisdata tingkat tinggi yang open source dan juga freeware. PostgreSQL dikembangkan oleh tim Berkeley University of California pada tahun 1977-1985. Perkembangan PostgreSQL sangat cepat, setiap hari selalu di update oleh tim pengembang. Sampai hari ini PostgreSQL merupakan saingan dari server database lainnya yang komersil.

Salah satu alasan mengapa memilih PostgreSQL sebagai server database ialah software tersebut open source. Pengembangan software open source tidak memerlukan perusahaan yang terstruktur sehingga factor ekonomi tidak membatasinya. Terdapat juga fasilitas feedback untuk user, user dapat melaporkan dengan cepat ketika terdapat bug dan fasilitas yang kurang pada software. Pendistribusian software ke user pun dengan cepat dapat dilakukan.

2. Basic SQL Command

Untuk bisa mengikuti tutorial ini diasumsikan sudah memenuhi beberapa syarat, yaitu:

a. PostgreSQL sudah terinstall berikut menjalankannya sebagai server.

b. PgAdmin sudah terinstall (optional).

SQL Command dapat ditulis dalam sebuah command line, juga dapat di lakukan dalam Query Tool pada aplikasi PgAdmin.

Copyright 2010

By: IMG06049

Page 2: Tutorial Singkat PostgreSQL UpdateMaret2010

Tutorial PostgreSQL2.1 Mengakses PostgreSQL melalui command line

• Membuat database pertama kali

createdb -U postgres pelatihan

• Koneksi ke PostgreSQL

psql -U postgres -d pelatihan

• Melihat list database yang sudah ada

\l

2.2 Membuat Database

• Membuat database dengan nama basisdata:

CREATE DATABASE basisdata;

• Koneksi ke database

\c basisdata

2.3 Membuat tabel

• Membuat tabel mahasiswa:

CREATE TABLE mahasiswa (

nim CHAR(8) PRIMARY KEY,

nama CHAR(35),

alamat VARCHAR(50)

);

Ilustrasi Tabel Mahasiswa

nim nama alamat15106049 RIKI BANDUNG19107087 ISIL DUMAI

Copyright 2010

By: IMG06049

Page 3: Tutorial Singkat PostgreSQL UpdateMaret2010

Tutorial PostgreSQL• Membuat tabel dosen:

CREATE TABLE dosen (

nip CHAR(9) PRIMARY KEY,

nama CHAR(35),

alamat VARCHAR(50)

);

Ilustrasi Tabel Dosen

nip nama alamat

130528324 Ishak Hanafiah Ismullah Bandung131690328 Wedyanto Bandung

• Melihat list tabel yang sudah ada

\d

• Melihat tipe data setiap kolom dari tabel

\d mahasiswa

2.4 Input data kedalam tabel

Input data ke tabel mahasiswa

INSERT INTO mahasiswa (nim,nama,alamat) VALUES (

'15106049',

'Riki Oktapiana',

'Bandung');

Copyright 2010

By: IMG06049

Page 4: Tutorial Singkat PostgreSQL UpdateMaret2010

Tutorial PostgreSQLInput data ke tabel dosen

INSERT INTO dosen (nip,nama,alamat) VALUES (

'130528324',

'Ishak Hanafiah Ismullah',

'Bandung');

2.5 Menampilkan Record

• Menampilkan Record pada tabel mahasiswa

SELECT * FROM mahasiswa;

• Menampilkan Record pada tabel dosen

SELECT nip, nama FROM dosen;

2.6 Menambah Kolom

ALTER TABLE mahasiswa ADD tgl_lahir DATE;

2.7 Menambah Record

UPDATE mahasiswa SET tgl_lahir ='19/10/1987' WHERE nim='15106049';

2.8 Search data

SELECT nama FROM dosen WHERE nip=’ 130528324’;

2.9 Menghapus Table

DROP TABLE mahasiswa;

2.10 Menghapus database

DROP DATABASE basisdata;

Copyright 2010

By: IMG06049

Page 5: Tutorial Singkat PostgreSQL UpdateMaret2010

Tutorial PostgreSQL3. Constraint

3.1 Primary Key

• Membuat database labtek

CREATE DATABASE labtek;

• Membuat tabel lantai

CREATE TABLE lantai (

id_lantai CHAR(9) ,

nm_lantai VARCHAR(35),

luas CHAR(5)

);

• Membuat Primary Key

ALTER TABLE lantai ADD CONSTRAINT pkey_lantai PRIMARY KEY (id_lantai);

3.2 Foreign Key

• Membuat tabel ruang

CREATE TABLE ruang (

id_ruang CHAR(9) ,

kapasitas CHAR(5),

id_lantai CHAR(9)

);

• Membuat Foreign Key

ALTER TABLE ruang ADD CONSTRAINT fkey_ruang FOREIGN KEY (id_lantai) REFERENCES lantai(id_lantai) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE;

*****************************************************************************

Copyright 2010

By: IMG06049

Page 6: Tutorial Singkat PostgreSQL UpdateMaret2010

Tutorial PostgreSQLPada sebuah basisdata setiap tabel harus memiliki hubungan dengan tabel lain.

Tugas 1

Buatlah hubungan antara tabel mahasiswa dan dosen dengan konsep basisdata:

Aturan Pertama(Perwalian):

1. Setiap dosen menjadi wali banyak mahasiswa.

2. Setiap Mahasiswa hanya memiliki satu dosen wali.

Aturan Kedua (Belajar Mengajar)

1. Setiap dosen dapat mengajar banyak mahasiswa.

2. Setiap mahasiswa dapat belajar dari beberapa dosen.

Jawaban

Setelah tabel dosen dan mahasiswa dibuat pada contoh sebelumnya, berikut langkah-langkahnya:

Aturan Pertama

1. Buat kolom baru pada tabel mahasiswa (Foreign Key) yang mempunyai referensi pada Primary Key pada tabel dosen,misalnya kolom nip.

ALTER TABLE mahasiswa ADD nip CHAR(9);

ALTER TABLE mahasiswa

ADD CONSTRAINT fkey_mahasiswa

FOREIGN KEY (nip) REFERENCES dosen(nip)

MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE;

2. Masukan NIP dosen yang menjadi wali pada Foreign Key tabel mahasiswa.

Copyright 2010

By: IMG06049

Page 7: Tutorial Singkat PostgreSQL UpdateMaret2010

Tutorial PostgreSQLAturan Kedua

1. Buat tabel baru yang menghubungkan antara tabel dosen dan tabel mahasiswa, misalnya tabel belajar_mengajar.

2. Buat kolom baru (nip dan nim) pada tabel belajar_mengajar yang mempunyai referensi pada tabel dosen untuk nip dan pada tabel mahasiswa untuk nim.

3. Masukkan NIP dan NIM pada tabel kolom nip dan nim tabel belajar_mengajar untuk mahasiswa dan dosen yang mempunyai hubungan belajar dan mengajar.

CREATE TABLE belajar_mengajar (

nim CHAR(8) ,

nip CHAR(9),

PRIMARY KEY (nim,nip)

);

ALTER TABLE belajar_mengajar

ADD CONSTRAINT fkey_belajar_mengajar_nip

FOREIGN KEY (nip) REFERENCES dosen(nip)

MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE;

ALTER TABLE belajar_mengajar

ADD CONSTRAINT fkey_belajar_mengajar_nim

FOREIGN KEY (nim) REFERENCES mahasiswa(nim)

MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE;

Copyright 2010

By: IMG06049

Page 8: Tutorial Singkat PostgreSQL UpdateMaret2010

Tutorial PostgreSQL4. Menampilkan data dari beberapa tabel yang berhubungan

SELECT m.nim AS NIM ,m.nama AS Nama_Mahasiswa,d.nama

AS Dosen_Pengajar

FROM mahasiswa m, dosen d, belajar_mengajar b

WHERE m.nim = b.nim AND d.nip = b.nip AND m.nim ='15106049';

5. Membuat Table View

CREATE VIEW belajar_view AS

SELECT m.nim AS NIM ,m.nama AS Nama_Mahasiswa,d.nama

AS Dosen_Pengajar

FROM mahasiswa m, dosen d, belajar_mengajar b

WHERE m.nim = b.nim AND d.nip = b.nip ;

Copyright 2010

By: IMG06049

Page 9: Tutorial Singkat PostgreSQL UpdateMaret2010

Tutorial PostgreSQL6 Membuat Tabel dari SELECT

CREATE TABLE belajar_copy AS

SELECT m.nim AS NIM ,m.nama AS Nama_Mahasiswa,d.nama

AS Dosen_Pengajar

FROM mahasiswa m, dosen d, belajar_mengajar b

WHERE m.nim = b.nim AND d.nip = b.nip ;

7 Large Objects dalam PostgreSQL

- Membuat tabel baru

CREATE TABLE gambar (nama CHAR(32), image OID);

- Memasukkan data ke database

INSERT INTO gambar VALUES (‘gunung’,lo_import(‘d:/multimedia/krenceng/krenceng3.jpg’));

- Memanggil data dari database

SELECT lo_export(gambar.image,’ d:/multimedia/krenceng/tmp/output01.jpg’) FROM gambar WHERE nama = ‘gunung’ ;

Jika query berhasil, file krenceng3.jpg akan di copy ke direktori d:/multimedia/krenceng/tmp/ dengan nama file output01.jpg

Copyright 2010

By: IMG06049