Tampilkan postingan dengan label postgresql. Tampilkan semua postingan
Tampilkan postingan dengan label postgresql. Tampilkan semua postingan

2009-02-05

Date in Java

Setelah buka buka program Openfire yang berbasis Java, gua nemuin script yang aneh. Dia selalu menyimpan format tanggal dalam bentuk bigint di database (PostgreSQL).

setelah ubek ubek di website Openfire-nya, dia tulis kl tanggal menggunakan fungsi

long currentDate = new Date().getTime();

jadinya 1233804487

Nyari info sana sini ternyata format yang dipakai adalah format Unix Timestamp, dengan starting date 1900-01-01 yang equal dengan nilai int 86400. http://en.wikipedia.org/wiki/Epoch_(reference_date) .


Terus ubek ubek diinternet gimana balikin fungsi datenya di PostgreSQL.
dapet di http://www.epochconverter.com/

Ini buat convert EPOCH ke Standar timestamp

SELECT TIMESTAMP WITH TIME ZONE 'epoch' + epoch * INTERVAL '1 second';

Ini buat convert Standar timestamp ke EPOCH

SELECT extract(epoch FROM date('2000-01-01 12:34'));

or
SELECT extract(epoch FROM now());

Di Java

EPOCH 2 Standar Timestamp

String date = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(new java.util.Date (epoch*1000));

2008-05-23

PostgreSQL : Unique database type

Geometric Types
point
line
lseg
box
path
polygon
Circle


Network Address Type

inet : cth ( { 192.168.1.1}
cidr : cth ( { 192.168.1.0/32 })
macaddr

Format penulisannnya bisa dilihat di manual postgresql (pgadmin3)

PostgreSQL : Store Procedure Lanjutan

Di postgreSQL jika kita mau membuat store procedure yang merefer ke
field field tertentu bisa dideklarasikan tipe data field tersebut.. jadi
sewaktu2x field tersebut berubah datatypenya .. storeprocedurenya tetap ikut

Contoh :

create table trade.tbl_Sample (
comp_name varchar(20) ,
comp_inet inet
);

create or replace function trade.tbl_Sample_getIt( i_comp_name
trade.tbl_Sample.com_Name%TYPE)
return void
as
$$
DECLARE
com_IPAddress trade.tbl_Sample.com_inet%TYPE;
BEGIN
select com_IPAddress = comp_inet from trade.tbl_sample
where comp_nane =$1;
END;
$$language 'plpgsql';

2008-05-22

CREATING ENTERPRISE SYSTEM USING POSTGRESQL (part 2)

Create function and store procedure using PL/pgsql

create function

create function trade.f_login( u varchar(20) , p varchar(20) ) returns
varchar(20)
as
$$
DECLARE
temp1 varchar(20) ;
BEGIN
select temp1 = usr_name || usr_Section from trade.t_m_user
where usr_Code = $1 and usr_password = $2;
return temp1 ;
END ;
$$language 'plpgsql';
select trade.f_login( 'Kebo','Uler' );


create Procedure

create function trade.In_tm_Code ( u varchar(20) , p varchar(20) )
as
$$
BEGIN
insert into trade.t_m_code values( $1 , $2);

END ;

$$language 'plpgsql';

perform trade.In_tm_Code( 'Kebo','Uler' );

2008-05-21

CREATING ENTERPRISE SYSTEM USING POSTGRESQL (part 1)

Changing postgres user password

/#> psql -Upostgres -D template1/

/>ALTER USER postgres WITH password '[password]';/

/ alter role
/

Creating User in Postgresql

create user trade with password 'trade';

Create Database in Postgresql

create database tradeERP with owner 'trade';

create schema in Postgresql

create schema it with owner 'trade' ;
create schema trade with owner 'trade' ;
create schema hr with owner 'hr' ;

create table in Postgresql

create table [schema_Name].m_user();

or

create table "trade".m_user();

alter table m_user add column usr_Code varchar(10) not null ;

alter table m_user add column usr_name varchar(10) not null
default('noname');

alter table m_user add column usr_type smallint(10) not null defaut(1);

alter table m_user add column usr_pass varchar(20) not null defaut(1);

alter table m_user add primary key(usr_Code);

2008-05-15

Transfer from MSSQL to PostgreSQL

Dari MSSQL


1. generate create table dari SQL menggunakan Enterprise manager.
2. Replace tanda '[' dan ']'
3. hilangkan kata CLUSTERED
4. Ganti GO dengan ';'
5. Ganti datetime / smalldatetime dengan timestamp
6. Ganti tinyInt dengan smallint
7. Ganti Bit dengan boolean
8. Ganti nVarchar dengan varchar
9. ganti smallmoney/money dengan numeric(12,4)
10. Bikin Bulk Copy data dari table ke csv , dengan delimiter ';' dan quote '"'


Di PgSQL


1. create login user trade
2. create database dengan user owner trade
3. create schema "trade" dengan user trade
4. jalankan script conversi dari MSSQL diatas
5. copy csv data ke dalam database dengan perintah

     copy "trade".tableName from '/home/hamdan/SQL/data.csv' delimiter ';' csv ;

6. Selesai.. . data dari mssql sudah di transfer ke PGSQL beserta structure tablenya