Berlatih

Kemarin dapat petuah gini.

Udah lama ga ketemu, kok ga pinter2 juga c.. Makanya, pinter tuh dilatih biar bego-nya ilang.

Dan saya.. cuma bisa diam. Jadi bingung sendiri.. Baru tau kalau pinter itu bisa dilatih. Taunya c, sering2 latihan supaya ahli biar dicap pinter plus jago..

tapi ga tau cara ngelatih kepintaran tuh ternyata ada caranya juga 😶😶

Advertisements

Terbanyak

Katanya.. suara sekecil apapun akan berarti. Tapi namanya juga sistem “dominasi” c yah. Suara kecil itu memang berarti. Memang sangat memiliki artinya sendiri.. tapi.. fakta itu cuma berlaku kalau suara tersebut akhirnya menjadi “dominan”. Kalau enggak, yah.. begitulah.

Kata mereka, demokrasi itu… Suara terbanyak adalah suara “tuhan”. Selama suara tersebut bukan yang terbanyak, seberarti apapun itu. Tetap aja bukan suara “tuhan”, kan yah.

Ehhmm.. saya teh ngomong apa c.. hhh.. gini deh kalau udah “kecapekan” terus tonton tv. 😶

Mengatur Tampilan Baris di Oracle (sqlplus)

Satu hal yang biasa disampaikan di pelatihan/workshop pemula untuk menggunakan Oracle, yaitu menampilkan data di sqlplus Oracle dengan menggunakan query SELECT. Hanya saja, untuk pemula, data yang ditampilkan agak “ga enak” buat dibaca. Sehingga, trainer suka memberitahukan trik khusus supaya tampilan di sqlplus enak dilihat dan dibaca. Percaya atau enggak.. pas kuliah semester 3 dulu, keyword “mengatur tampilan sqlplus Oracle”, atau “solusi tampilan kacau di sqlplus” lumayan populer di kelas. Sampai kakak asprak kasih tau tips-nya di kelas praktikum (waktu itu asprak baru masuk pas minggu ke-3 perkuliahan sehabis kelas teori).

Dan… ini dia trik yang sering dikasih tau ke para pemula yang baru belajar nampilin data di sqlplus.

SET LINESIZE 5000;
SET PAGESIZE 400

Nilai n setelah LINESIZE dan PAGESIZE itu ga musti 5000 dan 400 yah. Bisa berapapun. Dari sumber yang populer, default settting dari LINESIZE sebesar 80, dengan ukuran lebar maksimal 32.767 karakter. Sedangkan PAGESIZE, default-nya 66 baris yang sesuai ukuran kertas “letter”. Linesize digunakan untuk mengatur jumlah karakter yang di-print SQL*Plus prints pada 1 physical line. Sedangkan pagesize digunakan
untuk mengatur ukuran page.

Apapun itu, ini contoh gambar sebelum dan sesudah menggunakan linesize dan pagesize.

Hasil query SELECT sebelum penerapan SET LINESIZE
Hasil query SELECT setelah SET LINESIZE diterapkan
Hasil query sebelum penerapan PAGESIZE
Hasil query setelah PAGESIZE diterapkan

Okeh, gitu ajah.. receh banget yak. Hahaha… 😀 buat kamu yang mau kasih tau definisinya yang lebih jelas, boleh lhoh yah taruh di kolom komentar. Tapi… anak kuliahan sekarang mah kayaknya ga perlu belajar ginian yak. Udah banyak tools kece nan gretong kan yah. Whatever it is… yah… inilah postingan receh lainnya dari author blog ini. Moga guna dan membantu…

Menggunakan Kalender Hijriah di DBMS Oracle

Pernah terpikir cara menggunakan (menyimpan) nilai kalender Hijriah di database Oracle?! Hal itu yang akan kita bahas sekarang! Dan… seperti biasanya, tulisan yang sifatnya teknis, pastinya bukan terinspirasi dari pengalaman pribadi sendiri, dan tentu saja solusinya bukan dari saya sendiri juga 😀

Buat yang udah nanyain, thanks banget. Ini dia jawabannya. Dan… karena si penanya ceritanya seorang pelajar untuk jadi sql developer profesional, di sini ga dibahas tentang front-end kayak date picker dan sejenisnya. Levelnya di CLI-nya Oracle yah…

Faktanya, penyimpanan tanggal di database Oracle, selalu menggunakan format Date. Jadi, baik itu hijriah atau masehi, penyimpanannya menggunakan format date di Oracle. Perbedaannya terdapat pada setting dari NLS_CALENDAR yang digunakan. NLS merupakan kependekan dari “National Language Support”. Dikutip dari situs Oracle, kira2 bilangnya gini:

Arsitektur NLS dari Oracle memungkinkan kamu untuk menyimpan, mengolah, dan mengambil data dalam native languages. Hal ini meyakinkan beberapa kesepakatan dari database utilities, pesan error, urutan sorting, tanggal, waktu, kurs mata uang, numeric, dan calendar otomatis mengadaptasi dari native language dan settingan locale.

Oracle–https://docs.oracle.com/cd/F49540_01/DOC/server.815/a67789/ch1.htm

Kalau dianalogikan, ini kayak setting HP Android kamu. Kalau setting HP Android kamu bahasa Indonesia, otomatis, pas buka aplikasi Youtube, menu yang ditampilkan akan berbahasa Indonesia, bahkan kontennya yang bahasa asing juga ngikut pakai bahasa Indonesia (kalau udah ada versi translasinya). Tapi, kita bukan bahas Android di sini yah… kita bahas Oracle. Tadi tuh cuma analogi yang gampang aja (menurut saya).

Jadi… Langsung ke contoh ya…

Mengambil sysdate dari Oracle dalam format Hijriah.

SELECT TO_CHAR (SYSDATE, 'dd-mm-yyyy', 'nls_calendar=''arabic hijrah''') AS TGL_HIJRAH 
FROM DUAL;

Syntax di atas, artinya, ambil tanggal dari system dengan sysdate, dan lakukan perubahan setting dengan NLS mengacu pada mode Hijrah (Arabic Hijrah). Perhatikan cara tulis NLS-nya yah. Banyak yang salah pas sekali lihat soalnya. Kalau kamu mau coba pakai copy paste, itu lebih baik.

Kalau mau melihat nama bulannya, bisa pakai masking format ‘dd-month-yyyy’, tapi nls_calendar-nya pakai English Hijrah aja. Biar karakternya muncul. Soalnya pas saya coba pakai versi Arabic Hijrah,karakter/tulisan untuk bulan-nya ga keluar. Mungkin karena laptop saya belum “disyahadatkan”, jadi karakternya ga tampil pakai tulisan arab :D. Ini contohnya:

SELECT TO_CHAR (SYSDATE, 'dd-month-yyyy', 'nls_calendar=''english hijrah''') AS TGL_HIJRAH
FROM DUAL;

Sebagai catatan, SYSDATE bisa juga bentuk tanggal dari yang kamu tentukan sendiri. Contohnya,

SELECT TO_CHAR (TO_DATE ('07-04-2019', 'dd-mm-yyyy'), 'dd-month-yyyy', 'nls_calendar=''english hijrah''') AS TGL_HIJRAH
FROM DUAL;

Ngelihat contoh di atas, kamu pasti bisa menyimpulkan kalau masehi bisa diubah jadi hijrah, maka seharusnya kamu bisa ubah bentuk hijrah jadi masehi. Dan… yak! Insting kamu benar! Tapi pastikan session kamu lagi dalam mode hijrah. Ini contohnya:

alter session set NLS_CALENDAR='Arabic Hijrah' ;

SELECT TO_CHAR (TO_DATE ('01-08-1440', 'dd-mm-yyyy'), 'dd-month-yyyy', 'nls_calendar=''gregorian''') AS TGL_MASEHI
FROM DUAL;

Bisa dilihat ya, ada command untuk mengubah session ke mode Hijrah (bisa Arabic Hijrah atau English Hijrah) dengan keyword ALTER. Hal ini memastikan, kita dalam mode Hijrah, supaya input yang diterima diyakinkan dalam bentuk calendar hijriah.

Menggunakan tanggal Hijrah di tabel tertentu

Pertama, buat tabel “person” dengan 3 fields: id, name, birthday; dan setelahnya dimasukkan 1 data ke dalam tabel “person”. Pastikan NLS_CALENDAR dalam mode “hijrah”.

CREATE TABLE person(
	id int PRIMARY KEY,
	name VARCHAR2(30),
	birthday DATE
);

alter session set NLS_CALENDAR='English Hijrah' ;
INSERT INTO person VALUES (1,'Arby',TO_DATE('03-04-1414','dd-mm-yyyy'));

Maka, hasil dari query select-nya:

Dan kalau kamu mau diubah lagi ke dalam mode Gregorian:

Intinya, kamu ga perlu melakukan perubahan apapun c di syntax dasar kayak insert, select, update dll. Oracle udah mengubah itu semua untuk kamu. Saya ga tau c yah algoritma perhitungan konversinya gimana. Tapi, yaaa.. kayaknya c percaya2 aja sama hasilnya. Soalnya hasilnya samaan sama di konversi web online. Begitulah… ada tambahan dan koreksi?! Atau pertanyaan?? Bisa ditulis di kotak komentar yah.

Ahhh yaaa! Satu lagi, hal ini ga berlaku di MySQL/MariaDB. Untuk DBMS itu, biasanya yang dilakukan melakukan konversi di bahasa web-nya langsung, kayak di PHP atau pakai plugin Keith Wood. Saya sendiri belum pernah nyoba, tapi yah… gitu c jawabannya dari searching2 kemarin.

Moga bermanfaat! -acung jempol ala rock lee-

Referensi:

Note: tulisan ini, tulisan request-an dari seseorang yang bakal publish tulisan ini di suatu tempat “resmi” yang (katanya) bakal terbit bulan depan. Personally, I don’t know if he will have published it next month or not. But… tenang aja, tulisan ini legal kok buat di-publish ama kita berdua. Da kita udah sepakat ga pa pa.

State of the art

Satu pelajaran berharga buat saya.. and i learned it in the hard way..

Jadi, buat kamu yang lagi belajar, disuruh buat nyari state of the art dari sebuah topik.. yang dimaksudkan itu nyari hal kekinian dari topik itu, terus kalau disuruh bikin proposal state of the art dari sebuah topik, pastiin ada 2 hal yang kamu tulis: kontribusi & juga posisi pengajuan terhadap peta-pengetahuan-sederajat.

Gitu aja.. dan buat kamu yang karena-baru-pertama-kali-dengar-istilah-itu yang bikin kamu nyari bab bernama state of the art dari topik tertentu dari sebuah buku.. atau malah jadi nulis apa arti state of the art.. yaaaa.. kamu ga sendiri c yah, tapi pastiin itu kesalahan terakhir kamu terkait kata tersebut.

Cheers.. good luck, guys!

ジワるDAYS / AKB48[公式]

Single ke 55 dari AKB48 (jangan tanya saya 54 lainnya).. dengan Sashihara Rino jadi center. Dan.. Yap, ini single terakhir buat Sashi-chan. Konsep videonya bertabur kostum dari AKB48. Seolah kayak pengen ngasih tau, Sashi tuh udah lama banget di 48 grup dengan segala kontroversi plus kenangan tentang dia.

Berhubung ini tuh yang terakhir buat Sashi-chan, efek yang muncul kayak denger/lihat MV “kamulah melody”. Sedih2 seneng ga jelas gitu. Yah.. gitu lhah. Sisi sentimental dari seorang pengamat/fans gitu kayaknya.

Attached

Kalau kamu merasa terlalu terikat secara emosional ke pihak lain, hati2 aja ada ikatan lain yang bisa jadi terlepas karena itu. Apalagi kalau kamu belum “dewasa” secara emosional, ber-ego tinggi dan ga bisa (tepatnya menolak, plus ga mau) untuk didebat. Yah.. hati2 aja c.

Karena.. kamu bakal membela orang yang terikat secara emosional ke kamu. Berargumen habis2an, dan akhirnya akan ada orang yang terluka. Kamu pastinya ga bakal peduli, karena toh udah sibuk sama perasaan terluka dan ga terima. Bersikap seolah heroic, mengalah untuk menenangkan diri.. bangga akan diri sendiri.. padahal kamu melukai. Hmmm.. hati-hati aja c, itu pesan saya, kalau kamu masih mau dengerin nasihat orang lain.

Wajar kalau ini tentang ikatan darah.. tapi.. ada hal konyol yang lebih dari ini.

Persahabatan harus menemui akhirnya ketika ada idol yang dibela. Keluarga jadi menemui sengketa karena ada pilihan politik yang harus “dijaga”. Dan rusaknya hubungan kolega sesama pekerja karena klien yang yah.. gitu lhah. Seringkali, kasus ini muncul karena ego yang tinggi, hati yang terluka, kata maaf yang tidak pernah terucap, dan pengakuan kebenaran yang selalu ada.

Faktanya, klien itu hanyalah klien, mereka akan “pergi” pada saatnya. Sedangkan hubungan kolega kamu bertahan selamanya. Pilihan politik akan berganti pada masanya. Sedangkan darahmu selalu terikat hubungan keluarga. Dan idol.. well, idol itu untuk dikenal, dan bukan mengenal. Apa yang kamu dapat selain kepuasan sesaat?! Lazim? Entah..

Sepertinya kecenderungan bergantung untuk terikat dengan hal2 sementara ini sudah menjadi mayoritas daripada kondisi sebaliknya. Begitulah.. ga masalah c emotionally attached ke sesuatu yang kamu pilih. Tapi kamu musti tau kalau ada ego yang harus kamu atur, dan ada suatu prioritas yang harus kamu tetapkan.

Gitu aja..

Naik darah

Seminggu belakangan (which is 3 hari terakhir), bawaannya mau naik darah aja. Terutama sama kolega plus rekan kerja. Walaupun sebenarnya, ini bukan tentang mereka. Ini tentang saya sendiri dan apa yang ada dalam pikiran saya.

Udah dari lama, saya sadar banget kalau lingkungan saya dipenuhi orang-orang berfikiran sempit dengan ego di atas rata-rata. Beberapa di antaranya bahkan terkesan sulit diatur dan menganggap atasan-tak-tersentuh, ga lebih dari seorang yang bisa dimusuhi secara massal untuk mempererat persaudaraan sesama staff. 😶😶

Tapi semua itu tertutupi karena saya masih melihat kalau mereka care kepada sesama, masih punya musuh yang sama.. dan yah.. masih mau ngebantu saya kalau lagi kenapa2. Intinya ada sisi baik yang bisa selalu saya lihat.

Dan beberapa hari terakhir, dimulai dari Kamis sampai kemarin.. Saya jadi melihat mereka sebagai sosok berbeda. Penuh dengan keluhan, memikirkan bidang masing-masing, berusaha menang atas pendapat sendiri. Juga memuji diri sendiri berlebihan, dengan menyalahkan orang lain yang tidak sependapat dengan sindiran. Well, saya ga tahan dengan segala sindiran dan keluhan itu. 😞

Dan lagi-lagi, ini bukan tentang mereka.. ini tentang saya dan pikiran ini. Mungkin saya butuh hiburan aja yah.. sepertinya, saya butuh tidur mulai dari jam 9 malam ini sampai sebulan ke depan buat memperbaiki mood. 😔

Ok.. off lagi lhah berarti. 😴