Skip to main content

Posts

Showing posts with the label PostgreSQL

Basic Server Setup - PostgreSQL on Ubuntu

Basic Server Setup To start off, we need to change the PostgreSQL postgres user password; we will not be able to access the server otherwise. As the “postgres” Linux user, we will execute the psql command. In a terminal, type: Dapper sudo -u postgres psql template1 Gutsy/Hardy sudo -u postgres psql postgres Then, at the new prompt type these two commands, replacing with the new password (keep this safe ) : ALTER USER postgres WITH ENCRYPTED PASSWORD ' '; \q Create database To create the first database, which we will call "mydb", simply type : sudo -u postgres createdb mydb

[Linux] Installing PostgreSQL and VirtualBox in Slackware

Di kantor ada laptop kuno ( Satellite 4300 Series ), gedhe dan berat. Namun karena memorinya cukup, maka kinerjanya lumayan bagus. Sayangnya ada beberapa program penting yang tidak terinstall di situ, sementara OSnya menggunakan Slackware, distro yang paling aku hindarin karena ribet :( Laptop itu jarang digunakan oleh para engineer karena belum adanya server postgreSQL, padahal hampir semua program yang kami buat menggunakan database tersebut. Akhirnya, akhir pekan ini aku iseng-iseng ngoprek laptop tersebut. Dulu aku pernah coba install ulang laptop tersebut dengan distro lain, namun gagal, mungkin karena DVDRnya sudah kurang bagus. Pertama aku kepikiran untuk install VirtualBox agar aku bisa install OS lain, dan menggunakan OS tersebut melalui VirtualBox. Agak merepotkan memang, tapi itu akan lebih baik daripada kondisi saat ini. Aku coba download source dari virtualbox ( www.virtualbox.org ), aku memilih download Open Source Edition (OSE), dengan asumsi bahwa mungkin gak ada versi ...

[PostGreSQL] Problems with Double Precision

Dulu aku pernah ngalamin masalah dengan tipe data real , karena tingkat akurasinya yang terbatas. Akibatnya, semua nilai desimal, umumnya untuk menyimpan data nilai uang, aku ubah semua menjadi tipe double precision ( float8 ). Saat aku ngoprek program akuntansi, ternyata tipe data double precision tersebut membawa masalah. Masalah adalah dalam penyimpananannya, data yang disimpan tidak disimpan secara exact, melainkan menggunakan pendekatan. Jadi misal data 234.53 disimpan menjadi 234.529999999998 Saat ditampilkan, baik melalui aplikasi yang kubuat, lewat pgAdminIII atau phpPgAdmin, semuanya lancar, tetap tampil 234.53. Data ini muncul saat kita meng-dump database untuk backup. Namun masalahnya bukan saat backup. Karena tidak bersifat exact dan cara penyimpanan yang "aneh" tersebut, akibatnya sering terjadi kekacauan saat melakukan operasi numerik sederhana (penjumlahan, summary) atau pembandingan. Kadang operasi sederhana seperti SUM(xxx) dimana xxx bertipe double, hasi...

PostGreSQL :: Hitung Umur

Ternyata untuk menghitung umur dari data yang disimpan di PostGreSQL sangat gampang. PostGreSQL sendiri sudah menyediakan fungsi yang mendukung. Beberapa fungsi yang bisa dipakai adalah AGE dan EXTRACT. AGE dipakai untuk menghitung umur dari sebuah data, dibandingkan dengan hari ini, atau dengan data lain (tipenya timestamp). Misal: age(timestamp '1980-09-27'), akan menghasilkan nilai (bertipe interval) "24 years 1 mon 25 days". Nah, kalau mau mengambil nilai tahunnya saja, tinggal menggunakan EXTRACT Contoh: EXTRACT(year FROM AGE(timestamp '2001-09-27')), hasilnya akan jadi 24.

[PostGreSQL] -- case sensitif

Akhir-akhir ini mulai belajar makai PostGreSQL, yang katanya lebih bagus dibanding MySQL. Untung Arif udah nginstall PphPgAdmin, jadi aku nggak usah main di consolenya Pg. Lumayan membantu juga, bisa buat cepet bikin database, tabel dan ngutak-atik isinya. Tapi fitur PhpPgAdmin masih kalah dibanding PhpMyAdmin. Berbeda dengan MySQL (atau mungkin gara2 settingnya ya), PgSQL ini lebih case sensitif. Sesuai koding standard di sini, nama table dan field memakai kaidah Camel, yang berarti bakal ada kombinasi huruf besar dan kecil. Waktu masih pakai MySQL, sintaks SQLnya biasa aja, sepertinya gak terpengaruh sama upper/lower case (alias case insensitif). Tapi waktu nyobain PgSQL ini (maklum, masih sangat pemula) aku sempat bingung. Kok error terus ya? Contohnya, ada tabel namanya hrdEmployee. Aku pengen ngambil semua data, pakai query select: " SELECT * FROM hrdEmployee ". Lha kok muncul pesan : Relation "hrdemployee" does not exist Bingung, tanya kanan-kiri, ternyata gak...