<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-14410927</id><updated>2011-04-22T12:34:35.441+07:00</updated><title type='text'>Who's Afraid of Blog?</title><subtitle type='html'>Corat-coret seputar program komputer. Java, C/C++, Oracle, Delphi/Kylix, dll.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>21</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-14410927.post-112736389160968179</id><published>2005-09-22T10:38:00.000+07:00</published><updated>2005-09-22T11:44:54.366+07:00</updated><title type='text'>How to Connect an Oracle Server from Java Applications?</title><content type='html'>This document will describes how to make a connection between an Oracle server and Java application. It's very easy, right? You can do it by use the Oracle's JDBC driver which is provided by your Oracle server software.&lt;br /&gt;&lt;br /&gt;The first step is make sure you've set the CLASSPATH rigthly. It is used to point location of the Oracle's JDBC driver. To do this, use the following command in your MS-DOS prompt:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-weight: bold;"&gt;set CLASSPATH=.;C:\oracle\ora90\jdbc\lib\classes12.jar&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Now, you can write a simple Java program to test your setting above.&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;import java.sql.*;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;class TestConnect {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  public static void main(String args[]) throws SQLException {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    // Load Oracle's JDBC driver&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    try {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      class.forName("oracle.jdbc.driver.OracleDriver") ;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    } catch (ClassNotFoundException e) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;       System.out.println('Driver not found');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;       System.exit(1);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    &lt;/span&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;// Create a Connection object&lt;br /&gt;   &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;String URL = "jdbc:oracle:thin@budi:1521:oradb";&lt;/span&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    Connection conn = DriverManager.getConnection(URL, "budi", "wongjava");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    // Create a Statement object&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    Statement myStat = conn.createStatement();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    // Execute SQL statement and store the result onto a ResultSet object&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    ResultSet rs = myStat.executeQuery("SELECT * FROM EMPLOYEE");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    // Display data from ResultSet object&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    while (rs.next()) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;       System.out.println(&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         rs.getInt("empNo") + "\t" +&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         rs.getString("empName") + "\t" +&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         rs.getDouble("sallary")       &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;       );&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:courier new;" &gt;    // Close statement and connection object&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    myStat.close();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    conn.close();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Another way to load the JDBC driver is use &lt;span style="font-weight: bold;font-family:courier new;font-size:85%;"  &gt;registerDriver()&lt;/span&gt; method that is provided by &lt;span style="font-weight: bold;font-family:courier new;font-size:85%;"  &gt;DriverManager&lt;/span&gt; interface. So, you can load Oracle's JDBC driver by the following code:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112736389160968179?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112736389160968179/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112736389160968179' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112736389160968179'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112736389160968179'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/how-to-connect-oracle-server-from-java.html' title='How to Connect an Oracle Server from Java Applications?'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112668404285065405</id><published>2005-09-14T13:44:00.000+07:00</published><updated>2005-09-14T14:47:23.073+07:00</updated><title type='text'>Create A Header File in C/C++</title><content type='html'>The header file is the best solution to solve a C or C++ large programs. It is possible to divide our program into another part files based on task or category, that known as header file. The only thing you have to do is write your code without &lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-weight: bold;"&gt;main()&lt;/span&gt;&lt;/span&gt; function and store this code with extension &lt;span style="font-weight: bold;"&gt;".h"&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Here, I want to show you how to make a simple header file so we can use it from our main program. Please follow these steps:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 1:&lt;/span&gt;&lt;br /&gt;Make a file with an ".h" extension&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-style: italic;"&gt;// myheader.h&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;int sum(int a, int b);&lt;br /&gt;int mul(int a, int b);&lt;br /&gt;double div(double a, double b);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 2:&lt;/span&gt;&lt;br /&gt;Make a file with a ".c" or ".cpp" extension&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-style: italic;"&gt;// myheader.c&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;int sum(int a, int b) {&lt;br /&gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;return a+b;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;int mul(int a, int b) {&lt;br /&gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;return a*b;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;double div(double a, double b) {&lt;br /&gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;return a/b;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 3:&lt;/span&gt;&lt;br /&gt;Compile it using this command:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-weight: bold;"&gt;g++ -c myheader.c&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 4:&lt;/span&gt;&lt;br /&gt;Write a main program and use the header file above.&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-style: italic;"&gt;//main.c&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;#include &amp;lt;stdio.h&amp;gt;&lt;/span&gt;&lt;stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;#include "myheader.h"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;int main(void) {&lt;br /&gt; &lt;/span&gt;&lt;/stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;int rsum = sum(10, 3);&lt;br /&gt; &lt;/span&gt;&lt;/stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;int rmul = mul(10, 3);&lt;br /&gt; &lt;/span&gt;&lt;/stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;double rdiv = div(10.3, 3.0);&lt;br /&gt;&lt;br /&gt; &lt;/span&gt;&lt;/stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;printf("%d\t", rsum);&lt;br /&gt; &lt;/span&gt;&lt;/stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;printf("%d\t", rmul);&lt;br /&gt; &lt;/span&gt;&lt;/stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;printf("%.2lf", rdiv);&lt;br /&gt; &lt;/span&gt;&lt;/stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;return 0;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Compile and run your program. Here is the output produced by the program:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;13 &lt;/span&gt;&lt;/stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;stdio.h&gt;&lt;span style="font-weight: bold;"&gt;30 &lt;/span&gt;&lt;/stdio.h&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;stdio.h&gt;&lt;span style="font-weight: bold;"&gt;10.33&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Execuse me for my english.. :)&lt;/span&gt;&lt;/stdio.h&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112668404285065405?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112668404285065405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112668404285065405' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112668404285065405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112668404285065405'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/create-header-file-in-cc.html' title='Create A Header File in C/C++'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112658611900866909</id><published>2005-09-13T11:02:00.000+07:00</published><updated>2005-09-13T16:10:34.333+07:00</updated><title type='text'>Fungsi "Generik" dalam ANSI/ISO C++</title><content type='html'>Dalam ANSI/ISO C++ (C++ yang telah distandarisasi) kita dapat mendefinisikan sebuah fungsi generik yang dapat digunakan untuk berbagai macam tipe data yang berbeda. Fungsi generik ini selanjutnya sering dinamakan dengan &lt;span style="font-weight: bold;"&gt;template fungsi&lt;/span&gt; (&lt;span style="font-style: italic;"&gt;function template&lt;/span&gt;). Cara kerja dari fungsi generik ini sebenarnya sama seperti pada saat kita membuat suatu fungsi &lt;span style="font-style: italic;"&gt;overload&lt;/span&gt;. Berikut ini contoh yang saya ambil untuk dapat menunjukkan konsep pembuatan fungsi generik.&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;template &amp;lt;class Tipe&amp;gt; void swapValue(Tipe &amp;x, Tipe &amp;y) {&lt;br /&gt;Tipe z = x;&lt;br /&gt;x = y;&lt;br /&gt;y = z;&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Dengan membuat satu fungsi generik atau template fungsi di atas maka kita dapat menggunakan nya untuk berbagai macam tipe data. Artinya, kita tidak perlu lagi melakukan &lt;span style="font-style: italic;"&gt;overload&lt;/span&gt; terhadap fungsi tersebut. Sebagai contoh, apabila kita ingin menukar dua buah bilangan bulat, kita hanya perlu menuliskan kode berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;int a=100, b=200;&lt;br /&gt;swapValue(a, b);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Begitu pula pada saat kita ingin menggunakannya untuk tipe karakter, maka kodenya dapat diganti menjadi seperti berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;char a='A', b='B';&lt;br /&gt;swapValue(a, b);&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Selain template fungsi, kita juga dapat membuat sebuah kelas generik atau &lt;span style="font-weight: bold;"&gt;template kelas&lt;/span&gt; (&lt;span style="font-style: italic;"&gt;class template&lt;/span&gt;), yang menjadi konsep dasar dalam pembentukan STL (&lt;span style="font-style: italic;"&gt;Standard Template Library&lt;/span&gt;) yang terdapat di dalam C++. Bagaimana cara membuat template kelas? Insya Allah akan saya tunjukkan pada kesempatan lain.. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112658611900866909?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112658611900866909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112658611900866909' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112658611900866909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112658611900866909'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/fungsi-generik-dalam-ansiiso-c.html' title='Fungsi &quot;Generik&quot; dalam ANSI/ISO C++'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112650671636011802</id><published>2005-09-12T12:58:00.000+07:00</published><updated>2005-09-12T13:31:56.413+07:00</updated><title type='text'>Samakah b += 100; dengan b = b + 100; ?</title><content type='html'>Bagi Anda yang merupakan programmer C/C++ maupun Java tentu Anda terbiasa dengan gaya penulisan singkat berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;b += 100;&lt;/span&gt;    (&lt;span style="font-style: italic;"&gt;gaya ke-1&lt;/span&gt;)&lt;br /&gt;&lt;br /&gt;yang merupakan singkatan dari statemen di bawah ini&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;b = b + 100;&lt;/span&gt;     (&lt;span style="font-style: italic;"&gt;gaya ke-2&lt;/span&gt;)&lt;br /&gt;&lt;br /&gt;Namun, benarkah kedua statemen di atas itu &lt;span style="font-weight: bold;"&gt;identik&lt;/span&gt;, apabila kita menggunakannya di dalam bahasa Java? Inilah yang perlu kita perhatikan dan cermati bersama.  Baru saja saya melihat kasus tersebut sedang didiskusikan di forum Java (&lt;a href="http://forum.java.sun.com"&gt;http://forum.java.sun.com&lt;/a&gt;). Ternyata, yang menjadi permasalahan adalah bila statemen (&lt;span style="font-style: italic;"&gt;gaya ke-2&lt;/span&gt;) di atas digunakan untuk tipe data &lt;span style="font-weight: bold;"&gt;byte&lt;/span&gt;, ini akan menyebabkan kesalahan pada saat program dikompilasi. Sebagai contoh, misalnya saya memiliki kode program seperti di bawah ini:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;01: class tambah {&lt;br /&gt;02: public static void main(String args[]) {&lt;br /&gt;03:    byte b = 10;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;04:    b = b + 100;&lt;/span&gt;&lt;br /&gt;05:    System.out.println("Hasil: " + b);&lt;br /&gt;06: }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ketika saya kompilasi, program tersebut menampilkan pesan kesalahan berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;&lt;span style="font-weight: bold;"&gt;tambah.java:4: possible loss of precision&lt;/span&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;found   : int&lt;/span&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;required: byte&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Tapi anehnya, pada saat kode di atas saya ganti dengan kode di bawah ini:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;01: class tambah {&lt;br /&gt; 02: public static void main(String args[]) {&lt;br /&gt; 03:    byte b = 10;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;04:    b += 100;&lt;/span&gt;&lt;br /&gt; 05:    System.out.println("Hasil: " + b);&lt;br /&gt; 06: }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pada saat kompilasi dan eksekusi, program dapat berjalan dengan baik. Kenapa demikian? Saya sendiri belum mendapatkan alasannya. Namun yang pasti, untuk mengatasi kasus di atas, saya hanya perlu melakukan proses &lt;span style="font-style: italic; font-weight: bold;"&gt;typecasting&lt;/span&gt; (proses &lt;span style="font-style: italic;"&gt;menganggap suatu nilai ke tipe data tertentu&lt;/span&gt;) sehingga kodenya akan tampak seperti berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;&lt;span style="font-weight: bold;"&gt;04:    b = (byte) (b + 100);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;dan ternyata ini akan berjalan dengan baik tanpa menimbulkan masalah.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112650671636011802?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112650671636011802/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112650671636011802' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112650671636011802'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112650671636011802'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/samakah-b-100-dengan-b-b-100.html' title='Samakah b += 100; dengan b = b + 100; ?'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112649853755799727</id><published>2005-09-12T10:35:00.000+07:00</published><updated>2005-09-12T11:15:39.040+07:00</updated><title type='text'>Swap 2 Buah Variabel (Tanpa Variabel Bantu)</title><content type='html'>Dalam ilmu algoritma kita sering sekali menemukan kasus pertukaran dua buah bilangan, anggaplah A dan B.  Sebagai contoh, apabila&lt;br /&gt;&lt;br /&gt;A = 10 dan B = 35&lt;br /&gt;&lt;br /&gt;maka setelah ditukar, hasilnya adalah&lt;br /&gt;&lt;br /&gt;A = 35 dan B = 10&lt;br /&gt;&lt;br /&gt;Pada umumnya, kita melakukan hal tersebut dengan membuat sebuah variabel bantu (misalnya C), sehingga algoritmanya menjadi seperti di bawah ini:&lt;br /&gt;&lt;br /&gt;C = A;&lt;br /&gt;A = B;&lt;br /&gt;B = C;&lt;br /&gt;&lt;br /&gt;Namun masalahnya adalah dapatkah kita melakukannya tanpa variabel bantu? Jawabnya adalah YA, kita dapat melakukannya melalui beberapa cara, yaitu sebagai berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Cara pertama:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;A = A + B;   (A = 10 + 35 = 45)&lt;br /&gt;B = A - B;    (B = 45 - 10 = 35)&lt;br /&gt;A = A - B;    (A = 45 - 35 = 10)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Cara kedua:&lt;/span&gt; (menggunakan operator bitwise XOR (&lt;span style="font-style: italic;"&gt;Exclusive OR&lt;/span&gt;))&lt;br /&gt;&lt;br /&gt;Implementasi dalam Java, C/C++&lt;br /&gt;&lt;br /&gt;A  = A ^ B;   (A = 35 ^ 10 = 41)&lt;br /&gt;B  = A ^ B;   (B =  41 ^ 10 =  35)&lt;br /&gt;A  = A ^ B;   (A = 41 ^ 35 = 10)&lt;br /&gt;&lt;br /&gt;Implementasi dalam Pascal/Delphi&lt;br /&gt;&lt;br /&gt; A  = A xor B;&lt;br /&gt; B  = A xor B;&lt;br /&gt; A  = A xor B;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112649853755799727?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112649853755799727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112649853755799727' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112649853755799727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112649853755799727'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/swap-2-buah-variabel-tanpa-variabel.html' title='Swap 2 Buah Variabel (Tanpa Variabel Bantu)'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112649348216004517</id><published>2005-09-12T09:16:00.000+07:00</published><updated>2005-09-12T09:58:13.340+07:00</updated><title type='text'>Membuat File JAR yang Dapat Dieksekusi</title><content type='html'>Untuk menyederhanakan proses &lt;span style="font-style: italic;"&gt;deployment&lt;/span&gt; pada pemrograman Java, kita dapat menyimpan semua file hasil kompilasi (berekstensi &lt;span style="font-weight: bold;"&gt;.class&lt;/span&gt;) ke dalam satu file khusus yang disebut dengan file JAR (&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;J&lt;/span&gt;ava &lt;span style="font-weight: bold;"&gt;AR&lt;/span&gt;chieve&lt;/span&gt;). Dengan demikian kita dapat langsung mengeksekusi program yang kita tulis melalui file &lt;span style="font-weight: bold;"&gt;JAR&lt;/span&gt;, bukan melalui file &lt;span style="font-weight: bold;"&gt;.class&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Saya sering membaca di beberapa forum Java, dan ternyata banyak sekali yang menanyakan cara-cara untuk melakukan hal tersebut. Maka dari itu, di sini saya mencoba untuk menuliskan beberapa cara sederhana yang mungkin akan berguna bagi Anda yang memerlukannya. Berikut ini langkah-langkah yang saya lakukan:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 1:&lt;/span&gt; Saya membuat file program dan menyimpannya dengan nama &lt;span style="font-weight: bold;"&gt;mainclass.java&lt;/span&gt;. Dalam file ini saya membuat dua buah kelas, yaitu kelas balok dan kelas mainclass (&lt;span style="font-style: italic;"&gt;kelas yang mengandung method &lt;span style="font-weight: bold;"&gt;main()&lt;/span&gt;&lt;/span&gt;). Adapun kode programnya adalah seperti berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-style: italic;"&gt;// kelas balok&lt;/span&gt;&lt;br /&gt;class balok {&lt;br /&gt;   private int panjang = 0;&lt;br /&gt;   private int lebar = 0;&lt;br /&gt;   private int tinggi = 0;&lt;br /&gt;   public void setPanjang(int nilai) {&lt;br /&gt;       panjang = nilai;&lt;br /&gt;   }&lt;br /&gt;   public void setLebar(int nilai) {&lt;br /&gt;       lebar = nilai;&lt;br /&gt;   }&lt;br /&gt;   public void setTinggi(int nilai) {&lt;br /&gt;       tinggi = nilai;&lt;br /&gt;   }&lt;br /&gt;   public int getVolume() {&lt;br /&gt;       return panjang * lebar * tinggi;&lt;br /&gt;   }&lt;br /&gt;   public void printVolume() {&lt;br /&gt;       System.out.println("Volume = " + getVolume());&lt;br /&gt;   }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;// kelas utama, yang mengandung method main()&lt;/span&gt;&lt;br /&gt;class mainclass {&lt;br /&gt;   public static void main(String args[]) {&lt;br /&gt;       balok b = new balok();&lt;br /&gt;       b.setPanjang(4);&lt;br /&gt;       b.setLebar(3);&lt;br /&gt;       b.setTinggi(2);&lt;br /&gt;       b.printVolume();&lt;br /&gt;   }&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Apabila program di atas dikompilasi maka akan menghasilkan dua buah file &lt;span style="font-weight: bold;"&gt;.class&lt;/span&gt;, yaitu &lt;span style="font-weight: bold;"&gt;balok.class&lt;/span&gt; dan &lt;span style="font-weight: bold;"&gt;mainclass.class&lt;/span&gt; di dalam direktori tempat kita menuliskan kode program tersebut.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 2:&lt;/span&gt; Buat file JAR untuk menyimpan dua buah kelas tersebut, caranya adalah dengan menuliskan perintah di bawah ini.&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;java cfv myjarFile.jar *.class&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Perintah di atas secara otomatis akan memerintahkan Java untuk membuat file manifest (&lt;span style="font-style: italic;"&gt;default&lt;/span&gt;) di dalam file JAR.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 3:&lt;/span&gt; Buat file  manifest. Sebagai contoh, disini kita simpan dengan nama &lt;span style="font-weight: bold;"&gt;ManifestFile.txt&lt;/span&gt;. Isikan kode berikut ke dalam file tersebut .&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Main-Class: mainclass&lt;/span&gt; &lt;&lt;span style="font-style: italic;"&gt;enter&lt;/span&gt;&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Ingat! Akhiri dengan tombol ENTER&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 4:&lt;/span&gt; Ganti file manifest default dengan file Manifest.txt, yaitu dengan menuliskan perintah di bawah ini&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;jar umf ManifestFile.txt myjarFile.jar&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Sampai di sini, file JAR sudah siap untuk digunakan (dieksekusi), yaitu dengan cara seperti berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;java -jar myjarFile.jar&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Adapun hasil yang akan ditampilkan pada layar monitor adalah:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;font-size:85%;"  &gt;Volume = 24&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&lt;br /&gt;Untuk informasi lebih lengkap mengenai file JAR, Anda dapat melihatnya di &lt;a href="http://java.sun.com/docs/books/tutorial/jar/basics/index.html"&gt;http://java.sun.com/docs/books/tutorial/jar/basics/index.html&lt;/a&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112649348216004517?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112649348216004517/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112649348216004517' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112649348216004517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112649348216004517'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/membuat-file-jar-yang-dapat-dieksekusi.html' title='Membuat File JAR yang Dapat Dieksekusi'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112625613357638832</id><published>2005-09-09T15:25:00.000+07:00</published><updated>2005-09-09T15:55:33.650+07:00</updated><title type='text'>Memanggil Stored Procedure Oracle dari Java</title><content type='html'>Dalam pemrograman JDBC (&lt;span style="font-style: italic;"&gt;Java DataBase Connectivity&lt;/span&gt;), kita dapat melakukan pemanggilan &lt;span style="font-style: italic;"&gt;stored procedure&lt;/span&gt; yang telah dibuat di dalam database dari program Java yang kita tulis. Sebagai contoh, di sini saya memiliki sebuah &lt;span style="font-style: italic;"&gt;stored procedure&lt;/span&gt; yang sebelumnya saya buat di Oracle dengan menggunakan PL/SQL. Berikut ini contoh kodenya:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;create or replace procedure getCustomerName(custNo IN char, custName OUT varchar2) as&lt;br /&gt;begin&lt;br /&gt;  select customerName into custName from customer&lt;br /&gt;  where upper(customerNumber) = upper(custNo);&lt;br /&gt;end;&lt;br /&gt;/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Di sini diasumsikan bahwa di dalam database sudah terdapat tabel CUSTOMER yang terdiri dari field CUSTOMERNUMBER (bertipe CHAR) dan CUSTOMERNAME (bertipe VARCHAR2).&lt;br /&gt;&lt;br /&gt;Selanjutnya, untuk memanggil &lt;span style="font-style: italic;"&gt;stored procedure&lt;/span&gt; tersebut dari program Java, kita dapat menuliskannya sebagai berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;import java.sql.*;&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;&lt;span style="font-style: italic;"&gt;// load driver JDBC&lt;/span&gt;&lt;br /&gt;try {&lt;br /&gt;  Class.forName(driverName);&lt;br /&gt;} catch (ClassNotFound) {&lt;br /&gt;  System.out.println("ERROR: " + e.getMessage());&lt;br /&gt;  System.exit(1);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;// Membuat koneksi ke database&lt;/span&gt;&lt;br /&gt;Connection conn = DriverManager.getConnection(URL, user, password);&lt;br /&gt;&lt;br /&gt;CallableStatement cStat = conn.prepareCall("execute getCustomerName(?,?)");&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;// mengeset parameter masukan (IN)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;cStat.setString(1, "0001");&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;// mendaftarkan tipe parameter keluaran (OUT)&lt;/span&gt;&lt;br /&gt;cStat.registerOutParameter(2, java.sql.Types.VARCHAR);&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;// melakukan eksekusi statemen&lt;/span&gt;&lt;br /&gt;cStat.execute();&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;// mendapatkan nilai yang dihasilkan oleh stored procedure&lt;/span&gt;&lt;br /&gt;String name = cStat.getString(2);&lt;br /&gt;System.out.println("Nama : " + name);&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112625613357638832?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112625613357638832/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112625613357638832' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112625613357638832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112625613357638832'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/memanggil-stored-procedure-oracle-dari.html' title='Memanggil Stored Procedure Oracle dari Java'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112616133798700173</id><published>2005-09-08T13:16:00.000+07:00</published><updated>2005-09-08T14:14:57.410+07:00</updated><title type='text'>Membuat DLL Berisi Form Menggunakan Delphi</title><content type='html'>Delphi mengizinkan kita untuk membuat DLL (&lt;span style="font-style: italic;"&gt;Dynamic Link Library&lt;/span&gt;) yang mengandung form di dalamnya. Memang bila dibandingkan dengan pembuatan DLL biasa (yang hanya mengandung kode), pembuatan DLL yang berisi form ini relatif lebih rumit.&lt;br /&gt;&lt;br /&gt;Berikut ini langkah-langkah yang diperlukan untuk melakukan hal tersebut:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 1:&lt;/span&gt; Buatlah project DLL baru dengan memilih menu File|New|Other dan pilih item DLL Wizard pada kotak dialog yang ditampilkan. Simpan project tersebut dengan nama MyDLL.dpr&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 2:&lt;/span&gt; Buatlah sebuah form dengan memilih menu File|New Form dan tambahkan komponen-komponen sesuai dengan apa yang Anda inginkan.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 3:&lt;/span&gt; Ubah properti Name dari Form1 menjadi DLLForm. Simpan unit dari DLLForm dengan nama uDLLForm.pas&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 4:&lt;/span&gt; Aktifkan kembali unit dari MyDLL.dpr dan tambahkan fungsi di bawah ini.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;function ShowForm : Integer; stdcall;&lt;br /&gt;var&lt;br /&gt;Form : TDLLForm;&lt;br /&gt;begin&lt;br /&gt;Form := TDLLForm.Create(Application);&lt;br /&gt;Result := Form.ShowModal;&lt;br /&gt;Form.Free;&lt;br /&gt;end;&lt;/pre&gt;&lt;span style="font-weight: bold;"&gt; Langkah 5:&lt;/span&gt; Tambahkan bagian export untuk mendaftarkan fungsi ShowForm. Ini berguna agar fungsi tersebut dapat dikenali oleh aplikasi luar (aplikasi yang akan menggunakan DLL ini). Berikut ini kodenya:&lt;br /&gt;&lt;pre&gt;exports&lt;br /&gt;ShowForm;&lt;/pre&gt;&lt;span style="font-weight: bold;"&gt; Langkah 6:&lt;/span&gt; Simpan project. Dan pilih menu Project|Build MyDLL untuk melakukan pembuatan DLL. Sampai di sini kita sudah mendapatkan file MyDLL.dll di dalam direktori dimana kita menyimpan project MyDLL.dpr&lt;br /&gt;&lt;br /&gt;Selanjutnya untuk menggunakan DLL tersebut, kita dapat membuat aplikasi sederhana yang berisi satu komponen Button.&lt;br /&gt;&lt;br /&gt;Pada bagian interface dari aplikasi tersebut, daftarkan fungsi yang terdapat di dalam DLL, dengan cara:&lt;br /&gt;&lt;pre&gt;function ShowForm : Integer; stdcall; external `myforms.dll';&lt;/pre&gt; Dengan demikian, kita sudah dapat menggunakan fungsi tersebut dari event OnClick pada komponen Button1, yaitu dengan menuliskan kode di bawah ini.&lt;br /&gt;&lt;pre&gt;procedure TForm1.Button1Click(Sender: TObject);&lt;br /&gt;begin&lt;br /&gt;ShowForm;&lt;br /&gt;end;&lt;/pre&gt; Sekarang, coba Anda jalankan aplikasi tersebut, tekan tombol yang  ada dan amati apa yang terjadi.&lt;br /&gt;&lt;br /&gt;Selamat mencoba...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112616133798700173?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112616133798700173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112616133798700173' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112616133798700173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112616133798700173'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/membuat-dll-berisi-form-menggunakan.html' title='Membuat DLL Berisi Form Menggunakan Delphi'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112606756692285752</id><published>2005-09-07T11:13:00.000+07:00</published><updated>2005-09-07T11:32:48.083+07:00</updated><title type='text'>IBM Bagi-bagi Majalah DB2 Gratis</title><content type='html'>Sama seperti Oracle yang membagi-bagikan majalahnya secara gratis, IBM juga mengirimkan kepada kita majalah DB2, tentunya hanya bagi mereka yang melakukan registrasi. Di dalamnya berisi informasi-informasi (kebanyakan berupa informasi fitur baru yang terdapat di dalam DB2) serta trik-trik bagi para DBA (&lt;span style="font-style: italic;"&gt;Database Administrator&lt;/span&gt;) maupun &lt;span style="font-style: italic;"&gt;Application Developer&lt;/span&gt; agar lebih mudah dalam menyelesaikan tugas-tugas yang dihadapinya.&lt;br /&gt;&lt;br /&gt;Apabila Anda berminat untuk mendapatkannya, Anda cukup melakukan registrasi, yaitu dengan mengisi formulir yang disediakan di &lt;a href="http://www.db2mag.com/subscribe"&gt;http://www.db2mag.com/subscribe.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Selanjutnya, tunggu aja kedatangannya... (&lt;span style="font-style: italic;"&gt;biasanya sedikit lebih lama bila dibandingkan dengan majalah Oracle&lt;/span&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112606756692285752?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112606756692285752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112606756692285752' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112606756692285752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112606756692285752'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/ibm-bagi-bagi-majalah-db2-gratis.html' title='IBM Bagi-bagi Majalah DB2 Gratis'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112606451512860232</id><published>2005-09-07T10:33:00.000+07:00</published><updated>2005-09-07T11:03:58.620+07:00</updated><title type='text'>Dapatkan Majalah ORACLE gratis!!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/1843/1303/1600/oramag.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://photos1.blogger.com/blogger/1843/1303/320/oramag.jpg" alt="" border="0" /&gt;&lt;/a&gt;Asik, dateng lagi majalah Oracle gratis. Sudah sekitar dua tahun yang lalu saya selalu mendapatkannya. Lumayan, buat memperoleh &lt;span style="font-style: italic;"&gt;tips and trick&lt;/span&gt; dan informasi-informasi baru tentang Oracle.&lt;br /&gt;&lt;br /&gt;Anda berminat? Klik &lt;a href="http://www.submag.com/oracle?pk=oramag"&gt;di sini&lt;/a&gt; untuk melakukan registrasi.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112606451512860232?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112606451512860232/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112606451512860232' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112606451512860232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112606451512860232'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/dapatkan-majalah-oracle-gratis.html' title='Dapatkan Majalah ORACLE gratis!!'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112590093100636877</id><published>2005-09-05T12:57:00.000+07:00</published><updated>2005-09-05T13:15:31.010+07:00</updated><title type='text'>ORACLE: Menampilkan n Buah Record</title><content type='html'>Dalam Firebird, kita dapat menampilkan sejumlah (n) buah record pertama melalui perintah SQL berikut:&lt;br /&gt;&lt;br /&gt;SELECT FIRST n * FROM nama_tabel;&lt;br /&gt;&lt;br /&gt;Namun, di dalam Oracle tidak dikenal klausa FIRST. Sebagai gantinya, kita dapat melakukan hal tersebut dengan menggunakan variabel ROWNUM (variabel yang menunjukkan nomor baris). Sebagai contoh, apabila kita ingin menampilkan 10 buah record pertama di dalam sebuah tabel, maka kita dapat menuliskan perintah berikut:&lt;br /&gt;&lt;br /&gt;SELECT * FROM nama_tabel WHERE ROWNUM &lt;= 10&lt;br /&gt;&lt;br /&gt;Selanjutnya, apabila kita ingin menampilkan record ke-10 sampai 20, maka perintahnya dapat kita ubah menjadi seperti di bawah ini.&lt;br /&gt;&lt;br /&gt;SELECT * FROM nama_tabel WHERE ROWNUM BETWEEN 10 AND 20&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112590093100636877?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112590093100636877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112590093100636877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112590093100636877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112590093100636877'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/oracle-menampilkan-n-buah-record_05.html' title='ORACLE: Menampilkan n Buah Record'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112556015413742678</id><published>2005-09-01T11:26:00.000+07:00</published><updated>2005-09-01T14:35:54.193+07:00</updated><title type='text'>JAVA: Input/Output File</title><content type='html'>File merupakan hal pokok yang mutlak diperlukan dalam setiap pemrograman. Di sini, saya ingin menunjukkan bagaimana cara melakukan proses baca/tulis file di dalam bahasa Java.  Berikut ini contoh kodenya:&lt;br /&gt;&lt;br /&gt;import java.io.*;        &lt;span style="font-style: italic;"&gt;// INGAT, sertakan baris ini!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;class BacaTulis {&lt;br /&gt;  public static void main(String args[]) throws IOException {&lt;br /&gt;&lt;br /&gt;      String namaFile = "C:\\COBA.TXT";&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;      // membuat file sekaligus menuliskan teks ke dalamnya&lt;/span&gt;&lt;br /&gt;      FileWriter fw = new FileWriter(namaFile);&lt;br /&gt;      BufferedWriter bw = new BufferedWriter(fw);&lt;br /&gt;      bw.write("Java oh Java...\n");&lt;br /&gt;      bw.write("U\'re the best");&lt;br /&gt;      bw.close();&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;      // membaca file&lt;/span&gt;&lt;br /&gt;      FileReader fr = new FileReader(namaFile);&lt;br /&gt;      BufferedReader br = new BufferedReader(fr);&lt;br /&gt;      String str = null;&lt;br /&gt;      while ((str = br.readLine()) != null ) {&lt;br /&gt;         System.out.println(str);&lt;br /&gt;       }&lt;br /&gt;       br.close();&lt;br /&gt;  }&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112556015413742678?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112556015413742678/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112556015413742678' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112556015413742678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112556015413742678'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/java-inputoutput-file.html' title='JAVA: Input/Output File'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112554767251069506</id><published>2005-09-01T10:32:00.000+07:00</published><updated>2005-09-01T11:07:52.550+07:00</updated><title type='text'>Menghidupkan dan Mematikan Service Firebird di Linux</title><content type='html'>Sebelum kita dapat melakukan koneksi ke Firebird, kita perlu mengaktifkan service-nya terlebih dahulu, yaitu dengan menggunakan Firebird Manager. Adapun langkah-langkah yang diperlukan adalah sebagai berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 1&lt;/span&gt;:  Aktifkan direktori &lt;span style="font-weight: bold;"&gt;bin&lt;/span&gt; yang terdapat di dalam Firebird. Sebagai contoh, apabila kita melakukan installasi firebird di dalam direktori &lt;span style="font-weight: bold;"&gt;/opt/firebird&lt;/span&gt;, maka kita perlu melakukan perintah di bawah ini:&lt;br /&gt;&lt;br /&gt;budi@myslackware $ cd /opt/firebird/bin&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 2&lt;/span&gt;: Jalankan Firebird Manager dengan cara mengeksekusi file &lt;span style="font-weight: bold;"&gt;fbmgr.bin&lt;/span&gt; yang juga terdapat di dalam direktori &lt;span style="font-weight: bold;"&gt;bin&lt;/span&gt;. Perintahnya adalah seperti berikut:&lt;br /&gt;&lt;br /&gt;budi@myslackware $ ./fbmgr.bin&lt;br /&gt;FBMGR&gt; start -password masterkey       (&lt;span style="font-style: italic;"&gt;untuk menghidupkan service Firebird&lt;/span&gt;)&lt;br /&gt;FBMGR&gt; quit                                                (&lt;span style="font-style: italic;"&gt;keluar dari Firebird Manager&lt;/span&gt;)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 3&lt;/span&gt;:  Untuk melakukan koneksi ke database kita perlu menjalankan program Interactive SQL (&lt;span style="font-weight: bold;"&gt;isql&lt;/span&gt;).  Sebagai contoh, di sini kita akan menggunakan database &lt;span style="font-weight: bold;"&gt;employee.fdb&lt;/span&gt; yang ada di direktori &lt;span style="font-weight: bold;"&gt;examples&lt;/span&gt;. Perintahnya adalah sebagai berikut:&lt;br /&gt;&lt;br /&gt;budi@myslackware $ ./isql&lt;br /&gt;SQL&gt;  connect "/opt/firebird/examples/employee.fdb"&lt;br /&gt;CON&gt; user "SYSDBA" password "masterkey";&lt;br /&gt;&lt;br /&gt;Untuk memeriksanya, tuliskan query berikut:&lt;br /&gt;&lt;br /&gt;SQL&gt; select * from country;&lt;br /&gt;SQL&gt; quit;    (&lt;span style="font-style: italic;"&gt;keluar dari Interactive SQL&lt;/span&gt;)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Langkah 4&lt;/span&gt;:  Setelah selesai menggunakan database, sebaiknya matikan kembali service Firebird, yaitu melalui Firebird Manager. Berikut ini perintah untuk mematikan service tersebut.&lt;br /&gt;&lt;br /&gt;budi@myslackware $ ./fbmrg.bin&lt;br /&gt;FBMGR&gt; shut -password masterkey&lt;br /&gt;FBMGR&gt; quit&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112554767251069506?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112554767251069506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112554767251069506' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112554767251069506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112554767251069506'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/menghidupkan-dan-mematikan-service.html' title='Menghidupkan dan Mematikan Service Firebird di Linux'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112554547955315923</id><published>2005-09-01T10:22:00.000+07:00</published><updated>2005-09-01T10:31:19.556+07:00</updated><title type='text'>ORACLE: Penggunaan Statemen CASE dalam blok PL/SQL</title><content type='html'>Sebelum versi 9i, kita hanya dapat melakukan percabangan (&lt;span style="font-style: italic;"&gt;branching&lt;/span&gt;) di dalam blok PL/SQL dengan menggunakan statemen IF. Namun sekarang,  Oracle telah menyediakan alternatif lain yaitu dengan menghadirkan statemen CASE. Berikut ini contoh kode yang menunjukkan cara penggunaan dari statemen CASE:&lt;br /&gt;&lt;br /&gt;namahari := case (nohari)&lt;br /&gt;when 1 then 'Minggu'&lt;br /&gt;when 2 then 'Senin'&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;when 7 then 'Sabtu'&lt;br /&gt;else ''&lt;br /&gt;end case;&lt;br /&gt;dbms_output.put_line('Hari ke-' || to_char(nohari)&lt;br /&gt;|| ' : ' || namahari);&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112554547955315923?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112554547955315923/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112554547955315923' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112554547955315923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112554547955315923'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/09/oracle-penggunaan-statemen-case-dalam.html' title='ORACLE: Penggunaan Statemen CASE dalam blok PL/SQL'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112547558042268812</id><published>2005-08-31T14:33:00.000+07:00</published><updated>2005-08-31T15:09:01.233+07:00</updated><title type='text'>Tabel DUMMY di Oracle, Firebird dan Sybase</title><content type='html'>Pada kasus-kasus tertentu dalam pemrograman database, terkadang kita perlu menggunakan tabel dummy (salah satu tabel sistem yang disediakan oleh beberapa RDBMS). Namun, yang menjadi pertanyaan adalah: apakah nama dari tabel dummy tersebut sama untuk setiap RDBMS? Oh..&lt;span style="font-style: italic;"&gt;tentu tidak&lt;/span&gt;. Berikut ini daftar nama tabel dummy yang saya ketahui:&lt;br /&gt;&lt;br /&gt;Oracle                        : DUAL&lt;br /&gt;Firebird/Interbase  : rdb$database&lt;br /&gt;Sybase                       : DUMMY&lt;br /&gt;&lt;br /&gt;Saya sudah pernah mencari nama tabel dummy untuk IBM DB2, tapi sampai saat ini saya belum menemukannya. Saya curiga bahwa IBM DB2 memang tidak menyediakan fitur tersebut. Untuk menggantikannya, akhirnya saya membuat tabel dummy sendiri yang cuma terdiri dari satu field dan satu baris. Misalnya seperti berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;create table DUMMY (&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  myfield integer&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;);&lt;br /&gt;&lt;/span&gt; &lt;span style="font-style: italic;"&gt;-- agar terdapat satu baris data&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;insert into dummy(myfield) values(1);&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;sehingga  saya dapat menggunakannya  melalui perintah SQL berikut:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;select 'A' from dummy;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Saya pribadi sebenarnya merasa bahwa cara tersebut kurang efesien. Ada ide lain yang lebih bagus...??&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112547558042268812?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112547558042268812/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112547558042268812' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112547558042268812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112547558042268812'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/08/tabel-dummy-di-oracle-firebird-dan.html' title='Tabel DUMMY di Oracle, Firebird dan Sybase'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112530557492046713</id><published>2005-08-29T15:51:00.000+07:00</published><updated>2005-08-29T15:52:54.920+07:00</updated><title type='text'>Anda Butuh e-book Gratis?</title><content type='html'>&lt;p class="MsoNormal" style="text-align: justify;"&gt;Beberapa waktu yang lalu ketika saya sedang mencari artikel tentang Java dan C++, tiba-tiba saya menemukan alamat web yang ternyata berisi kumpulan file e-book (dalam format PDF dan CHM) yang dapat di-download secara cuma-cuma. Terlepas dari legal atau tidaknya situs tersebut, saya jelas merasa senang sekali bisa memperoleh buku-buku tanpa bayar.. :-). Lebih gilanya lagi, buku-buku yang tersedia di situ adalah buku yang dipublikasikan oleh penerbit-penerbit besar seperti O’Reily, Addison Wisley dan lainnya. Buku-bukunya pun sangat beragam, mulai dari Java, C/C++, PHP, Perl, SQL, Linux/Unix, Solaris, Oracle, Networking dan banyak lagi yang lainnya. Anda berminat mendapatkannya? Klik &lt;a href="http://files.nixp.ru/" target="_blank"&gt;di sini&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;Terima kasih Google…:-)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112530557492046713?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112530557492046713/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112530557492046713' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112530557492046713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112530557492046713'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/08/anda-butuh-e-book-gratis.html' title='Anda Butuh e-book Gratis?'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112530541991363586</id><published>2005-08-29T15:48:00.000+07:00</published><updated>2005-08-29T15:50:19.916+07:00</updated><title type='text'>JAVA: Multiple catch</title><content type='html'>&lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;Sama halnya seperti C++ maupun &lt;st1:place st="on"&gt;Delphi&lt;/st1:place&gt;, Java juga mengizinkan kita untuk menuliskan exception-handling yang dapat mencegah beberapa eksepsi sekaligus. Artinya, pada saat terjadi eksepsi, maka blok exception-handling akan memilih exception-handler mana yang sesuai dan harus dilakukan. Di sini, saya akan menyertakan sebuah contoh kode sederhana yang dapat menunjukkan konsep tersebut.&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;class MultipleCatch {&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;            &lt;/span&gt;public static void main(String args[]) {&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;int num=10, div=0, result;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;int array[] = {1,2};&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;try {&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                                    &lt;/span&gt;result = num / div;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                                    &lt;/span&gt;array[2] = 3;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;} catch(ArithmeticException e1) {&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                                    &lt;/span&gt;System.out.println(e1);&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;} catch(ArrayIndexOutOfBoundsException e2) {&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                                    &lt;/span&gt;System.out.println(e2);&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;} finally {&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                                    &lt;/span&gt;System.out.println("Statemen final");&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;System.out.println("Setelah exception-handling");&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;            &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;}&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;span style="font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;Sampai di sini, coba Anda jalankan program tersebut dan perhatikan hasilnya. Selanjutnya, ganti nilai variabel div dengan nilai selain nol, kompilasi ulang kode tersebut dan jalankan kembali. Dari dua buah hasil yang diberikan maka dapat disimpulkan bahwa pada saat terjadi pembagian dengan nilai 0, maka exception-handler yang akan dieksekusi adalah yang terdapat pada catch pertama. Sedangkan pada saat kita mengakses indeks array ke-2 maka yang akan dieksekusi adalah exception-handler yang terdapat pada catch kedua.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112530541991363586?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112530541991363586/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112530541991363586' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112530541991363586'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112530541991363586'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/08/java-multiple-catch.html' title='JAVA: Multiple catch'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112530527057970285</id><published>2005-08-29T15:46:00.000+07:00</published><updated>2005-08-29T15:47:50.583+07:00</updated><title type='text'>JAVA: Melakukan Input Data String</title><content type='html'>&lt;p class="MsoNormal" style="text-align: justify;"&gt;Kebiasaan umum para programmer dalam mempelajari bahasa pemrograman baru adalah dengan menampilkan sebuah teks (misalnya: “Hello World”) ke layar monitor. Langkah selanjutnya adalah melakukan input data dari keyboard dan memprosesnya sehingga hasilnya dapat dikeluarkan lagi ke layar monitor. Namun, biasanya permasalahan akan muncul pada saat bahasa baru yang dipelajarinya adalah bahasa Java. Kenapa demikian? Karena di dalam Java, proses input datanya tidak semudah Pascal, C maupun C++. Di dalam Pascal kita dapat melakukannya dengan mudah melalui prosedur &lt;b style=""&gt;readln&lt;/b&gt;, C melalui &lt;b style=""&gt;scanf&lt;/b&gt; ataupun &lt;b style=""&gt;gets&lt;/b&gt; dan C++ melalui &lt;b style=""&gt;cin&lt;/b&gt;.&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;Salah satu caranya adalah dengan melakukan instansiasi dari kelas BufferedReader, dimana didalamnya dilewatkan pula intance dari kelas InputStreamReader. Selanjutnya, untuk membaca nilai dari keyboard kita harus memanggil method readLine() yang dimiliki oleh instance dari kelas BufferedReader tersebut. Selain itu, kode harus dituliskan di dalam blok try-catch. Ini digunakan untuk mengantisipasi kemungkinan terjadinya kesalahan (IOException) ketika run-time. Berikut ini contoh kode sederhana yang dapat menunjukkan hal tersebut.&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;import java.io.*;&lt;span style=""&gt;           &lt;/span&gt;// ingat, sertakan baris ini&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;class InputDataString {&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;            &lt;/span&gt;public static void main(String args[]) {&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;String nama = null;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;BufferedReader console = &lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;       &lt;/span&gt;new BufferedReader(new InputStreamReader(System.in));&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;System.out.print("Masukkan nama Anda : ");&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;try {&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;                                    &lt;/span&gt;nama = console.readLine();&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;} catch(IOException e) {&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;                                    &lt;/span&gt;System.err.println(e.getMessage());&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;}&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;System.out.println("Halo " + nama + ", apa kabar?");&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=""&gt;            &lt;/span&gt;}&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;}&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;Bila dijalankan, maka contoh hasil yang akan ditampilkan adalah seperti berikut:&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;b style=""&gt;Masukkan nama Anda : Budi Raharjo&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:85%;"&gt;&lt;b style=""&gt;&lt;span style="font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;Halo Budi Raharjo, apa kabar?&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112530527057970285?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112530527057970285/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112530527057970285' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112530527057970285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112530527057970285'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/08/java-melakukan-input-data-string.html' title='JAVA: Melakukan Input Data String'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112530514854798487</id><published>2005-08-29T15:44:00.000+07:00</published><updated>2005-08-29T15:45:48.553+07:00</updated><title type='text'>ORACLE: Tipe Record di Level Database</title><content type='html'>&lt;p class="MsoNormal" style="text-align: justify;"&gt;Dalam dunia pemrograman record merupakan struktur data komposit atau gabungan yang terdiri dari beberapa buah field. Nah, yang menjadi masalah adalah apakah kita juga dapat melakukan pendefinisian tipe record di level database? Dari sekian banyak RDBMS yang ada, saya baru mencobanya di Oracle dan ternyata memang berhasil. Berikut ini contoh kode yang dapat menunjukkan cara pendefinisian dan penggunaan tipe record di Oracle.&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;Untuk pendefinisiannya, kode yang saya tuliskan pada bagian deklarasi PL/SQL adalah seperti berikut:&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;declare&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;type Alamat is record (&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;NamaJalan varchar2(25),&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;NoJalan integer,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;NoRumah varchar2(5),&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;st1:place st="on"&gt;&lt;st1:city st="on"&gt;Kota&lt;/st1:City&gt;&lt;/st1:place&gt; varchar2(15)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;type Programmer is record (&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;Nama varchar2(25),&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;Domisili Alamat&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;rec Programmer;&lt;span style=""&gt;  &lt;/span&gt;--deklarasi rec dengan tipe Programmer&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;Selanjutnya, di dalam badan PL/SQL saya dapat langsung menggunakan tipe tersebut dengan contoh kode seperti berikut:&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;begin&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;rec.Nama&lt;span style=""&gt;                 &lt;/span&gt;:= 'Budi Raharjo';&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;rec.Domisili.NamaJalan&lt;span style=""&gt;   &lt;/span&gt;:= 'Jl. Puma';&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;rec.Domisili.NoJalan&lt;span style=""&gt;     &lt;/span&gt;:= 4;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;rec.Domisili.NoRumah&lt;span style=""&gt;     &lt;/span&gt;:= '139 A';&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;rec.Domisili.Kota&lt;span style=""&gt;        &lt;/span&gt;:= '&lt;st1:place st="on"&gt;&lt;st1:city st="on"&gt;Bandung&lt;/st1:City&gt;&lt;/st1:place&gt;';&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;dbms_output.put_line(rec.Nama);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;  &lt;/span&gt;dbms_output.put_line(rec.Domisili.NamaJalan ||&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;                       &lt;/span&gt;' ' || rec.Domisili.NoJalan ||&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;                       &lt;/span&gt;' No. ' || rec.Domisili.NoRumah ||&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;                       &lt;/span&gt;' ' || rec.Domisili.Kota);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-size: 11pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;end;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;Saya belum tahu apakah RDBMS lain seperti IBM DB2, Firebird/Interbase atau Sybase juga mendukung tipe record, ada yang sudah pernah mencoba? Wah, boleh dong…&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112530514854798487?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112530514854798487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112530514854798487' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112530514854798487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112530514854798487'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/08/oracle-tipe-record-di-level-database.html' title='ORACLE: Tipe Record di Level Database'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112530505300911155</id><published>2005-08-29T15:36:00.000+07:00</published><updated>2005-08-29T15:44:13.016+07:00</updated><title type='text'>LINUX: Installasi Kylix 3 di Slackware 9.0</title><content type='html'>&lt;p class="MsoNormal" style="text-align: justify;"&gt;Dulu, sewaktu saya masih baru pertama kali menggunakan Linux (Slackware 9.0), software yang pertama kali ingin saya install adalah Borland Kylix (&lt;st1:place st="on"&gt;Delphi&lt;/st1:place&gt; for Linux). Saya ingin membandingkannya dengan &lt;st1:place st="on"&gt;Delphi&lt;/st1:place&gt;, tool yang setiap hari saya gunakan dalam menyelesaikan pekerjaan &lt;a href="http://www.sddn.co.id/"&gt;kantor&lt;/a&gt;. Bagi Anda yang masih bermasalah dengan cara installasi Kylix, semoga artikel ini akan dapat membantu. Berikut cara-cara yang saya lakukan untuk melakukan installasi Kylix sekaligus mengeset konfigurasi yang harus dilakukan agar Kylix dapat kita gunakan&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;i style=""&gt;Catatan: di sini saya login ke dalam sistem sebagai &lt;b style=""&gt;root&lt;/b&gt; dan installasi saya lakukan dari CDROM&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;1.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;st1:place st="on"&gt;&lt;st1:placetype st="on"&gt;Mount&lt;/st1:PlaceType&gt;  &lt;st1:placename st="on"&gt;CDROM&lt;/st1:PlaceName&gt;&lt;/st1:place&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;2.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Untuk mengecek apakah sistem support untuk installasi Kylix atau tidak, saya menuliskan perintah berikut:&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"&gt;&lt;b style=""&gt;# cd /mnt/cdrom/borpretest&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"&gt;&lt;b style=""&gt;# ./testsystem&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;3.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Eksekusi file &lt;b style=""&gt;setup.sh&lt;/b&gt;. Secara default, software Kylix akan terinstall ke dalam direktori &lt;b style=""&gt;/usr/local/kylix3&lt;/b&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;4.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Lakukan registrasi software&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;5.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Set ownership dari file-file yang tersimpan dalam direktori &lt;b style=""&gt;./borland&lt;/b&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"&gt;&lt;b style=""&gt;# cd /root&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"&gt;&lt;b style=""&gt;# chown -R root.root .borland/&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;6.&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Untuk menjalankan, tuliskan perintah berikut:&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"&gt;&lt;b style=""&gt;# export LANG=en_US&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="margin-left: 0.25in; text-align: justify;"&gt;&lt;b style=""&gt;# startdelphi&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;p class="MsoNormal" style="text-align: justify;"&gt;Sampai di sini, Kylix sudah siap untuk digunakan.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112530505300911155?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112530505300911155/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112530505300911155' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112530505300911155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112530505300911155'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/08/linux-installasi-kylix-3-di-slackware.html' title='LINUX: Installasi Kylix 3 di Slackware 9.0'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14410927.post-112114627634051429</id><published>2005-07-12T12:25:00.000+07:00</published><updated>2005-07-12T14:30:29.243+07:00</updated><title type='text'>Pilih mana: Java, C ataukah C++?</title><content type='html'>Berdasarkan survery yang telah dilakukan oleh sebuah perusahaan perangkat lunak di Amerika, &lt;span style="font-style: italic;"&gt;TIOBE Software&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Java&lt;/span&gt; ternyata masih menempati urutan pertama dalam jajaran bahasa populer yang sangat banyak diminati oleh para programmer. Di urutan kedua, di sana muncul nama '&lt;span style="font-weight: bold;"&gt;C&lt;/span&gt;' yang kemudian disusul oleh C++, PHP, (Visual) Basic, Perl dan bahasa-bahasa pemrograman lainnya.  Hasil survey selengkapnya dapat dilihat &lt;a href="http://www.developer.com/java/other/article.php/3390001"&gt;di sini&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Hal tersebut tentu dapat menjadi referensi bagi para programmer yang masih merasa bingung dalam memilih bahasa pemrograman apa yang seharusnya dipelajari dan ditekuni untuk dijadikan sebagai '&lt;span style="font-weight: bold;"&gt;senjata&lt;/span&gt;' andalannya.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14410927-112114627634051429?l=budiraharjo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://budiraharjo.blogspot.com/feeds/112114627634051429/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=14410927&amp;postID=112114627634051429' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112114627634051429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14410927/posts/default/112114627634051429'/><link rel='alternate' type='text/html' href='http://budiraharjo.blogspot.com/2005/07/pilih-mana-java-c-ataukah-c.html' title='Pilih mana: Java, C ataukah C++?'/><author><name>m-budiraharjo</name><uri>http://www.blogger.com/profile/09272686382849114189</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://www.geocities.com/bdraharjo/images/photo.jpg'/></author><thr:total>2</thr:total></entry></feed>
