Wisha's Weblog

“Dan nikmat Tuhan kamu yang manakah yang dapat kamu dustakan” (QS.Ar-Rahman:13)

1. Belajar PostgreSQL Yeuuh

Tinggalkan komentar

Loncat ke Prosedural Language pada Postgres

“Owww catetan kecil”

Ketika kita lupa user apa yang di gunakan pada postgres kita dapat melihatnya pada file pg_auth

di directory vi pgdata/global/pg_auth

Problem pada port yang tidak default cek port

ps waux|grep postgr

netstat -pltn

kembalikan settingan port ” vi /home/pg8/pgdata/postgresql.conf ”

ubah settingan port menjadi standar

Sampai sini dulu .. BIngung ??? saya juga bingung dengan apa yang saya ketik hehe

bingung kg masalah yang penting ngerti ^_6

Dalam postgres terdapat PL “Prosedural Language”

dimana proses perhitungan bisa di proses di dalam query langsung tanpa memanfaatkan

Program misalnya PHP tak perlulagi melakukan perhitungan karena adanya fungsi PL

PL pada postgre mendukung beberapa bahaa pemrograman di antaranya java,php,python

penggunaan PL ini sangat efisien dalam melakukan proses view pada data yang besar

postgres-# \dt

maka akan muncul banyak fungsi

postgres=# select upper (‘abcd’);
upper
——-
ABCD
(1 row)

postgres=# select initcap (‘abcd’);
initcap
———
Abcd
(1 row)

select upper(judul) from namadb;

CREATE FUNCTION salam(PARAMETER)
RETURNS varchar AS $$
DECLARE      —> Opsional jika ada
teks varchar;   —> Deklarasi Variabel
jumlah int; —> ini bisa bertambah terus tergantung kebutuhan
BEGIN        —> Awal implementasi
teks :=’salam’;
RETURN teks;
END;
$$ LANGUAGE ‘plpgsql’;  –> Bisa berubah apakah pakai pg / java ‘pljava’ dengan syarat module pl java sudah terinstall
karena pada bawaan pg belum ada jadi harus download install compile
–> $$ menyatakan awak dan akhir dari
fungsinya seperti tag awal dan akhir pada php <?  ?>

————-/ script sederhananya /——–

CREATE FUNCTION salam()
RETURNS varchar AS $$
DECLARE
teks varchar;
jumlah int;
BEGIN
teks :=’salam’;
RETURN teks;
END;
$$ LANGUAGE ‘plpgsql’;

—————————————–

simpan dengan nama.sql di simpan di user pada systemnya di directorynya /home/userpg

untuk penggunaan plpgsql harus di definisikan dulu pada saat create database di postgree

#createlang -U root -d namadb plpgsql

inject databasenya bash-3.2$ psql -U ozil postgres -f /home/userpg/tes.sql

CREATE FUNCTION  —> Berarti sudah Oke

untuk melakukan testing login ke postgres

psql -U root namadb

lakukan query dengan function tadi

postgres=# select salam();
salam
——-
salam    —> Hasil dari returnnya

(1 row)

Bingung kaan saya juga bingung hahai

sekarang yg lebih bengungan dikit scriptnye gan

———-/ Script 2 /————

CREATE FUNCTION salam(orang varchar)
RETURNS varchar AS $$
DECLARE
teks varchar;
jumlah int;
BEGIN
teks :=’salam ‘ || upper(orang);
RETURN teks;
END;
$$ LANGUAGE ‘plpgsql’;

———————————————

Lakukan hal yang sama yaitu inject db seperti di atas

Ooow perlu di ketahui jika kita ingin modifikasi fungsi yang ada di script sebelumnya

dan inject ulang maka kita harus drop function sebelumnya

postgres=# drop function salam(varchar);  —> Varchar tergantung tipe data anda yang ada di script yang anda buat gan
DROP FUNCTION
postgres=# \q

ada lagi yg lebih maknyus gaan kalau tidak mau ribet hehe muter2 drop function pada script postgres

ubah pada script functionnya saja menjadi

CREATE OR REPLACE FUNCTION salam(orang varchar)

—> Menambahkan OR REPLACE jadi dia kalau tidak create ya akan replace function

Jika kita lupa scriptnya kita bisa manfaatkan perintah di bawah ini pada login postgres

postgres=#\df salam

DImana outputnya berupa penjelasan

Atau tambahkan+

postgres=#\df+ salam  –>Outputnya lebih lengkap gan

cmiiw

Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google+

You are commenting using your Google+ account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

w

Connecting to %s