select count(*) from karyawan
where 
((floor(months_between(to_date('01-01-2010','DD/MM/YYYY'),tgl_lhr)/12)>=50);

On 2/4/10, Padang Nadimpu <[email protected]> wrote:
> Sesuai pencerahan, telah dicoba dgn hasil sbb :
>
> C:\>sqlplus /nolog
>
> SQL> conn sys/password as sysdba
> Connected.
> SQL> alter system set nls_date_format='dd-mm-yyyy' scope=spfile;
> alter system set nls_date_format='dd-mm-yyyy' scope=spfile
>                  *
> ERROR at line 1:
> ORA-02096: specified initialization parameter is not modifiable with this
> option
>
> Mohon pencerahan solusi agar sukses dan terimakasih sebelumnya
>
>
>
> --- On Thu, 2/4/10, sewu200 <[email protected]> wrote:
>
> From: sewu200 <[email protected]>
> Subject: [indo-oracle] Re: Solusi tuntas "ORA-01843: not a valid month"
> To: [email protected]
> Date: Thursday, February 4, 2010, 2:16 PM
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>       alter system set nls_date_format= 'dd-mm-yyyy' scope=spfile;
>
> terus shutdown db
>
> kemudian startup db
>
>
>
> moga membantu
>
>
>
> --- In indo-oracle@ yahoogroups. com, Padang Nadimpu <nadi...@... > wrote:
>
>>
>
>> Halo Master-master Oracle
>
>>
>
>> Dari berbagai info via internet, diperoleh tahapan solusi "not a valid
>> month", sbb :
>
>> (lewat jendela cmd diakses database, dan dalam kasus ini menggunakan
>> oracle9i)
>
>>
>
>> sqlplus /nolog
>
>> conn / as sysdba
>
>>
>
>> SHOW PARAMETER NLS_DATE_FORMAT;
>
>> SELECT SYSDATE FROM DUAL;
>
>>
>
>> NAME                          TYPE        VALUE
>
>> ------------ --------- -------- ----------- --------
>
>> nls_date_format               string
>
>>
>
>> Info berikutnya, jika nilai (value) parameter nls_date_format NULL maka
>> format tanggal akan mengunakan format default yang ada di dictionary
>> DATABASE_PROPERTIES
>
>>
>
>> Untuk mengubah format tanggal level database, maka perlu diedit parameter
>> file dgn menambahkan NLS_DATE_FORMAT.
>
>> Lokasi parameter file ada di $ORACLE_HOME\ admin\nama_ SID\pfile\ init.ora
>
>>
>
>> Merujuk info tsb, kami mengedit file init.ora dgn Notepad serta
>> menambahkan (ketik) NLS_DATE_FORMAT= 'DD-MM-YYYY'
>
>> kemudian Simpan dan keluar
>
>>
>
>> Tahap berikutnya, database di-startup
>
>>
>
>> SHUTDOWN ABORT;
>
>> STARTUP PFILE=D:\Oracle\ Oradata\karyawan \pfile\init. ora.101920091827 33
>
>>
>
>> startup database sukses, selanjutnya eksekusi show parameter
>> nls_date_format sbb :
>
>>
>
>> SHOW PARAMETER NLS_DATE_FORMAT;
>
>> SELECT SYSDATE FROM DUAL;
>
>>
>
>> NAME                          TYPE        VALUE
>
>> ------------ --------- -------- ----------- --------
>
>> nls_date_format               string      DD-MM-YYYY
>
>>
>
>> Info di atas menunjukkan telah sukses menambahkan parameter
>> NLS_DATE_FORMAT= 'DD-MM-YYYY'
>
>>
>
>> Tahap berikutnya, diakses user database utk eksekusi query select, sbb :
>
>>
>
>> sqlplus /nolog
>
>> conn username/password@ hostsstring
>
>>
>
>> select count(*) from karyawan
>
>> where ((floor(months_ between(' 01-01-2010' ,tgl_lhr) /12)>=50) ;
>
>>
>
>> hasil eksekusi :
>
>>
>
>> select count(*) FROM karyawan
>
>> where ((floor(months_ between(' 01-01-2010' ,tgl_lhr) /12)>=50)
>
>>                              *
>
>> ERROR at line 2:
>
>> ORA-01843: not a valid month
>
>>
>
>> Mohon sulosi tuntas, agar eksekusi query select TIDAK HARUS DIAWALI DGN
>
>> alter session set nls_format=' dd-mm-yyyy' ;
>
>>
>
>> Atas pencerahan solusi diucapkan terimakasih.
>
>>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> [Non-text portions of this message have been removed]
>
>

Kirim email ke