alexa-tracking

Main Content

1024
1024
KASKUS
51
244
https://www.kaskus.co.id/thread/000000000000000015518552/posgresql--kupas-tuntas
postgreSQL : Kupas tuntas....
Ayooo gan....kita kumpul2 disini buat ngebahas postgreSQL secara lengkap....

intinya, mari kita saling belajar...potensi yang dimiliki postgreSQL sangatlah bagus, sayang klo kita tidak memahaminya....


***
monggooooooooooooo

OOP DBMS : inheritance

inheritance secara harfiah memiliki arti pewarisan, dalam hal ini bisa diartikan : sebuah object yang karateristik / sifat - sifat dasar dari object yang sejenis. Dalam dunia nyata bisa lihat pada sebuah class Manusia yang mewarisikan sifat2 dasar ke Laki-laki dan perempuan, dalam hal ini Manusia sebagai superClass (induk dari Laki-laki dan perempuan),sedangkan Laki-laki dan perempuan sebagai subclass yang memiliki semua kemampuan manusia antara lain : punya tubuh, punya nyawa, punya organ tubuh, bernafas, makan, minum dst,
akan tetapi Laki-laki dan perempuan tidak sama secara identik, semisal : beda jenis kelamin, prilaku dst.
posgreSQL : Kupas tuntas....
setidaknya, seperti itulah pengertian inheritance (penurunan/pewarisan).

sedangkan inheritance didalam postgresql bisa dimanfaatkan dalam design table2 dalam sebuah database (bahkan pernah denger sampai antar database, tapi belum pernah testing, jadi kagak saya singgung, mungkin lain kali) yang nantinya bisa lebih praktis dan yang pasti bisa meningkatkan performa database tersebut. segala sesuatu pasti punya kelebihan dan kekurangan masing2, hal itu juga terdapat inheritance ini, yakni :
kelebihan :
- praktis
- terpusat
- efisien (secara space)
- dst (ini dari yang saya ketahui)
kelemahan :
- koneksi one to one

ok dech, langsung saja pada kasus yang sering kita hadapi dilapangan (tentunya kita selaku programmer)..
- pasti tidak asing dengan data Supplier dan Customer, ada beberapa cara untuk menDesign database supaya bisa dapat mengCover keperluan tersebut, antara lain :
1. Free Table
yakni dengan cara menyediakan table yang dikhususkan untuk menampung kedua data tersebut.
mungkin seperti ini :
posgreSQL : Kupas tuntas....
* CP = Contact Person
2. Menggunakan table tambahan
menambahkan table Person untuk menampung ContactPerson, yang tentunya untuk mengakses data tersebut perlu metode khusus (relasi, view dst)
posgreSQL : Kupas tuntas....
3. Inheritance
ini merupakan gabungan dari kedua cara diatas, seperti ini :
posgreSQL : Kupas tuntas....
dari gambar ini memang terlihat malah terjadi pemborosan field, karena field yang terdapat pada table Person diulang pada table Customer & Supplier, nah... inilah kelebihan yang saya jabarkan.
seperti yang telah saya singgung, bahwa SuperClass mewarisikan / menurukan semua karakteristik yang dimilik kepada SubClass dibawahnya. jadi pada kenyataannya, table Customer hanya miliki 3 field : pkCustomer, NamaCustomer & AlamatCustomer sedangkan sisanya diambil penuh dari table Person, begitu juga pada table Supplier.
Q : trus data tersimpan dimana?!...
data akan tetap tersimpan pada masing table, jika kita insert data dari SubClass, maka secara otomatis data akan displit ke SuperClass.
contoh :
Code:

INSERT INTO "public"."Customer"
("Nama","Alamat","Kota","Telp","TglLahir","NamaCustomer","AlamatCustomer")
VALUES ('Hj. Siti Nurmala','Perum. Indah Sekali','Bandung','08112312312','19780213','Toko Abadi','Pasar Daerah');
INSERT INTO "public"."Supplier"
("Nama","Alamat","Kota","Telp","TglLahir","NamaSupplier","AlamatSupplier")
VALUES ('Bp. Maryono','Jl. Jalan enak sekali','Jakarta','0813211231','19801201','PT. MAHARDIKA UTAMA','Komplek Pergudangan Umum');
INSERT INTO "public"."Person"
("Nama","Alamat","Kota","Telp","TglLahir")
VALUES ('Poison','Jl. Jalan enak sekali','heart','0852340*****','19700201');

maka pada table Customer ada terisi satu data ('Hj. Siti Nurmala','Perum. Indah Sekali','Bandung','08112312312','19780213','Toko Abadi','Pasar Daerah'emoticon-Wink dan pada table Supplier juga terisi satu data ('Bp. Maryono','Jl. Jalan enak sekali','Jakarta','0813211231','19801201','PT. MAHARDIKA UTAMA','Komplek Pergudangan Umum'emoticon-Wink, sedangkan pada table person akan tersisi 3 data, yakni : ('Hj. Siti Nurmala','Perum. Indah Sekali','Bandung','08112312312','19780213'emoticon-Wink dan ('Bp. Maryono','Jl. Jalan enak sekali','Jakarta','0813211231','19801201'emoticon-Wink dan ('Poison','Jl. Jalan enak sekali','heart','0852340*****','19700201'emoticon-Wink

Q : klo untuk akses data?!...
tidak ada bedanya, bahkan tanpa harus melakukan relasi ( misal : join )
Code:

select * from "Person";
select * from "Customer";
select * from "Supplier";


beberapa role yang perlu diperhatikan dalam Inheritance :
1. jika terjadi perubahan struktur pada SuperClass, maka akan secara otomatis akan berubah pula pada SubClass,
contoh : anda menambahkan field TmpLahir pada table Person, maka pada table Customer & Supplier akan bertambah pula.
2. jika ada data yang insert tanpa melaui SubClass (seperti data ke 3), maka data tersebut hanya dimiliki oleh SuperClass,
3. SuperClass tidak bisa diDrop ato delete, jika sudah memiliki SubClass
4. sebenarnya, untuk merelasikan antara SuperClass dengan SubClass tidak memerlukan PrimaryKey, karena sudah dihandle oleh server
5. (baru ini, entar klo nemu lagi, ane post lagi)


***
dinanti masukkan dari rekan2 terutama para master,
note :
- jika saya menukan hal baru (yang sementara ini belum saya ketahui), ada kemungkinan posting-an ini akan saya edit.
mending di forum programmer aje gan emoticon-Smilie
pasti bnyk yg minat di sana
nemu juga nih yang ngebahas tentang postgre..emoticon-Selamat

terus posting gan.. emoticon-Rate 5 Star
ane bakalan pantengin nih trit.... emoticon-army
Quote:Original Posted By Overd
mending di forum programmer aje gan emoticon-Smilie
pasti bnyk yg minat di sana


he..he..he...sori gan...ane kemaren kebutu nepsong.....minta inpo dong cara mindahinnye.....


Quote:Original Posted By airec
nemu juga nih yang ngebahas tentang postgre..emoticon-Selamat

terus posting gan.. emoticon-Rate 5 Star
ane bakalan pantengin nih trit.... emoticon-army

seeeeeep gan....saling berbagi aja gan..klo agan mau share ato tanya2 soal postgreSQL, silahkan post aje gan....semiga aje kita bisa saling bantu...
wew ko dimari, knp ga di 176 emoticon-Big Grin minta di move aja sama edit judul emoticon-Malu (S)
kurang T tuh gan emoticon-Peace

baru mau migrasi nih dari mysql ke postgresql emoticon-Malu
Quote:Original Posted By fauzieuy
wew ko dimari, knp ga di 176 emoticon-Big Grin minta di move aja sama edit judul emoticon-Malu (S)
kurang T tuh gan emoticon-Peace

baru mau migrasi nih dari mysql ke postgresql emoticon-Malu


udah kelar gan migrasinya?!..

GUI

itu tampilannya pk program apa?

terakhir menjamah postgres cuma pake text-mode (postmaster kl ga salah)

btw ada contoh query rekursif buat postgres? misal query pohon MLM...
Quote:Original Posted By d6164zz
udah kelar gan migrasinya?!..


kenapa ga ke fopers aja gan migrasinya emoticon-Malu

ane mau tanya nih gan, cara download / backup + restore database (file sql) via sql shell bijimane ya? emoticon-Bingung (S)
posgreSQL : Kupas tuntas....

infonya mantap masgan
bermanfaat sekali buat saya..
makasih yahh
saya bantu rate5
Quote:Original Posted By kodokngorek
itu tampilannya pk program apa?

terakhir menjamah postgres cuma pake text-mode (postmaster kl ga salah)

btw ada contoh query rekursif buat postgres? misal query pohon MLM...

belum gan...sementara rekursif dihandle aplikasi emoticon-Malu (S)
Quote:Original Posted By fauzieuy


kenapa ga ke fopers aja gan migrasinya emoticon-Malu

ane mau tanya nih gan, cara download / backup + restore database (file sql) via sql shell bijimane ya? emoticon-Bingung (S)

back up :
Code:
pg_dump.exe --host server_name --port 5432 --username postgres --format custom --blobs --verbose --file "d:/folder/hasil_backup.bak" "db_name"

Restore
Code:
"pg_restore.exe" --host server_name --port 5432 --username "postgres" --dbname "db_name"  --no-password --clean --verbose "d:/folder/file_backup.bak"


Quote:Original Posted By 9.1.1

infonya mantap masgan
bermanfaat sekali buat saya..
makasih yahh
saya bantu rate5

theng kyu......
sayang semester ini udah gaka ketemu sama postgresSQL emoticon-Mewek
Gan ane mau hapus database di postgres,
tapi ga bisa kenapa ya?
pesannya kayak gini :

dropdb: database removal failed: ERROR: database "ps_qms" is being accessed by other users
DBMS pertama yang ane pake ni

Nice info gan

Nice info gan
×