Skip to main content

PowerBuilder - Binary Data Terbatas sampai 32 KB




Hmm...., ini sebenarnya masalah lama yang pernah aku tangani. Namun kemarin ada lagi temen yang menanyakan hal ini, "Kenapa binary data waktu dieksekusi dengan updateblob make ODBC untuk Sybase ASE gak perah bisa lewat dari 32KB?"
Sebenarnya ini bukan keterbatasan, tapi memang batas yang telah di-set pada file konfigurasinya. Ini dilakukan untuk menjamin performa baik aplikasi maupun database.  Seperti diketahui bahwa Sybase ASE menggunakan device files dan databases nya ditanamkan ke dalam device files tersebut serta binary data ikut dibenamkan ke dalam database dan bukan pada files yang tersimpan pada direktori file system.  Dengan kondisi ini, ukuran 32KB untuk binary data bisa dianggap sebagai ukuran yang cukup kecil namun masih bisa mewakili karena toh untuk file gambar (misal) dalam format jpg dengan ukuran 32Kb masih cukup baik untuk ditampilkan lagi.  Namun pada beberapa kasus, seperti salah-satunya yang dihadapi teman tadi, kita sering tidak bisa men-drive user untuk membatasi ukuran file sampai maksimal 32KB.  Disamping kemampuan si user sendiri, atau dengan alasan kecepatan pelayanan karena si user kebetulan juga melayani kastemer, seringkali kita mengabaikan optimasi performa dengan membatasi besar data, untuk kemudian hanya mengandalkan optimasi pada performa mesin dan komunikasi saja. Ini tidak salah, sampai pada batas yang bisa diterima.
OK, kita kembali ke PowerBuilder.  Untuk koneksi database Sybase ASE menggunakan ODBC, kita bisa melakukan perubahan konfigurasi default dengan memodifikasi file %INSTALLATIONROOT%\Sybase\Shared\PowerBuilder\pbodbxxx.ini. Dimana %INSTALLATIONROOT% biasanya adalah pada "C:\Program Files" atau "C:\Program Files (x86)" untuk windows 64bit, sedang xxx pada pbodb menujukkan versi PowerBuilder terinstall pada mesin atau PowerBuilder yang kita yang akan kita modifikasi file konfigurasinya.  Dengan menggunakan notepad, kita buka file pbodbxxx.ini dan cari pada bagian "[SQL SERVER]".  Hati-hati dengan hasil temuan, karena ada 2 bagian yang mengandung SQL SERVER, satu adalah [MICROSOFT SQL SERVER] sementara yang lain adalah [SQL SERVER]. Kenapa sama-sama menggunakan SQL SERVER, karena baik Sybase ASE maupun Microsoft SQL Server memang pernah dikembangkan secara bersama oleh Sybase dan Microsoft. Kita ambil yang [SQL SERVER] saja.  Perhatikan potongan berikut,

[SQL Server]
PBCatalogOwner='dbo'
PBSyntax='SYBASE_SYNTAX'
PBDateTime='DEFAULT_DATETIME'
PBFunctions='SYBASE_FUNCTIONS'
PBSpecialDataTypes='SYBASE_SPECIALDATATYPES'
PBObjectIDs='YES'
PBMaxBlobSize='32767'
PBMaxTextSize='32767'
PBDWDynamic='NO'
SQLSrvrTSPrefix='0x'
PBTrimCatCharColumns='YES'
PBUseProcOwner='YES'
IdentifierQuoteChar='"'



Nah, kita hanya perlu untuk melakukan modifikasi pada bagian yang diblok hijau.  Untuk file gambar, kita ubah nila PBMaxBlobSize sesuai kebutuhan kita.  Sementara untuk text kita ubah PBMaxTextSize.  Nilai yang tertera dalam satuan bytes.  Jadi, silakan dan selamat mencoba.....

Popular posts from this blog

Snort dan Suricata IDPS

Sugeng pagi, Mas! Pagi, gimana kabarnya? Baik, Mas. Gini, Mas! Saya lagi pusing ngurusin jaringan di kantor. Pusing kenapa? Itu lo, Mas, virus tau-tau nongol tanpa permisi.  Bikin jaringan jadi lemot. Yang lebih repotnnya lagi, kita gak tau dari sebelah mana penyebarannya. Lah, gitu aja kok pusing.  Kamu punya alat monitoring macem IDS gak? Apa itu IDS, Mas? IDS itu, singkatan coro londo Intrussion Detection System.  Maksudnya sistem buat mendeteksi aktifitas penyusupan. La, itu kan bukan antivirus, Mas! Lagian mana ada sih yang nyusup di kantor saya.  Apalagi kantor banyakan mainnya di jaringan private. La ini, yang salah! Jangan beranggapan bahwa setiap penyusupan itu datangnya dari luar. Ancaman kebocoran itu paling besar justeru datangnya dari dalam. Dan satu hal lagi penyusupan tidak harus terjadi dalam satu saat.  Seperti proses penyusupan yang dilakukan dengan menggunakan kuda trojan.  Para penyusup justeru anteng dulu di dalam kuda trojan....

Null Allowed dan PK di Sybase ASE

Ha ha ha ha... Setelah nginep (eh nginep nggak dong la wong gak tidur) semaleman buat migrasi data, aku dapet PR baru. Menyempurnakan tool yang aku bikin. Ya harus disempurnakan la wong jalannya masih geyal-geyol. Hi hi hi hi. Hari ini, aku mencoba untuk membuat satu routine buat mengekstrak DDL bukan lewat tool yang dah ada dari Sybase, tapi murni bikinanku sendiri. Setelah tengok sana tengok sini make matanya Oom Google, akhirnya bisa terbentuk juga query dasar buat ekstrak DDL. Tapi masalah kemudian adalah menentukan suatu kolom masuk ke PK dan kemudian apakah suatu kolom itu nullallowed. Ternyata kunci untuk masuk ke PK ada di system table yang namanya 'sysindexes' dan untuk null allowed karena mengacu ke kolom ada di syscolumns. Check ini ada di kolom status dari syscolumns. Kondisi untuk check adalah 'status & 8' jika menhasilkan lebih besar dari 0 maka dia null allowed jika sama dengan 0 maka dia not null. Kemudian untuk masuk ke pk atau tidak checknya ...

Bincang Ringan, Misi Kristen dan Dakwah Islam (I)

Dalam sebuah diskusi dengan santri saya mengajukan pertanyaan, "Bolehkah orang Kristen menyiarkan agamanya ke orang Islam ?" Serentak mereka menjawab "Tidak boleh". Kemudian saya mengajukan pertanyaan susulan, "Rekan-rekan santri senang tidak, kalau ada orang yang masuk Islam karena didakwahi oleh Koh Hany," dan secara serempak juga mereka menjawab "Tentu senang ustadz." Kontan saya timpali, lha kok nggak adil, orang Kristen nggak boleh menyiarkan agama ke umat Islam, sementara umat Islam boleh mendakwahi orang Kristen. Saya jadi ingat kutipan dari Syaikh Ali Mahfuzh, guru besar Ilmu Da'wah wal Irsyad, Anggota Majelis Ulama dan Pembina Ilmu Dakwah pada Universitas Al Azhar dalam bukunya Widji Saksono, Mengislamkan Jawa, terbitan Mizan tahun 1995. "Barangsiapa memperhatikan dengan seksama, tahulah ia bahwa sesungguhnya dakwah kepada Allah itu adalah sendi kehidupan suatu agama, pangkal syi'ar suatu kepercayaan. Syahdan pad...