Rabu, 19 Oktober 2011

PENGANTAR BASIS DATA

Beberapa definisi tentang Database :
Menurut Gordon C. Everest :
Database adalah koleksi atau kumpulan data yang mekanis, terbagi/shared, terdefinisi secara formal dan dikontrol terpusat pada organisasi.
Menurut C.J. Date :
Database adalah koleksi “data operasional” yang tersimpan dan dipakai oleh sistem aplikasi dari suatu organisasi.
- Data input adalah data yang masuk dari luar sistem
- Data output adalah data yang dihasilkan sistem
- Data operasional adalah data yang tersimpan pada sistem
Menurut Toni Fabbri :
Database adalah sebuah sistem file-file yang terintegrasi yang mempunyai minimal primary key untuk pengulangan data.
Menurut S. Attre :
Database adalah koleksi data-data yang saling berhubungan mengenai suatu organisasi / enterprise dengan macam-macam pemakaiannya.
Jadi SISTEM DATABASE adalah sistem penyimpanan data memakai komputer.

Contoh DBMS :
1. Database Hierarchy : Pengaksesan data harus mengikuti aturan hierarchy yang sudah didefinisikan terlebih dahulu.
Contoh : IMS-2 (Information Management System) oleh IBM, 1968
2. Data Network : Data membentuk jaringan yang lebih bebas dari model hierarchy.
Contoh : IDMS (Integrated Database Management System) oleh Cullinett Software Inc,
1972
3. Data Relational : Data dikelompokkan secara bebas menurut jenisnya lewat proses
normalisasi
Contoh : - INGRES oleh UN of CA & Relational Tech., 1973
- System-R oleh IBM Research, 1975
- ORACLE oleh Relational Software Inc. , 1979
- DBASE II oleh Ashton-Tate, 1981
2. Komponen Utama DBMS
Komponen utama DBMS dapat dibagi menjadi 4 macam :
• Perangkat Keras
• Perangkat Lunak
• Data
• Pengguna
3. Keuntungan Dan Kerugian Penggunaan DBMS
Pengunaan DMBS untuk mengelola data mempunyai beberapa keuntungan,
yaitu :
• Kebebasan data dan akses yang efisien
• Mereduksi waktu pengembangan aplikasi
• Integritas dan keamanan data
• Administrasi keseragaman data
• Akses bersamaan dan perbaikan dari terjadinya crashes (tabrakan dari proses serentak).
• Mengurangi data redundancy : Data redundansi dapat direduksi/dikurangi, tetapi tidak dapat dihilangkan sama sekali (untuk kepentingan keyfield)
• Membutuhkan sedikit memory untuk penyimpanan data
Kerugian pengunaan DBMS antara lain :
• Memperoleh perangkat lunak yang mahal (teknologi DBMS, Operation, Conversion, Planning, Risk). DBMS mainframe masih sangat mahal. DBMS berbasis mikro biayanya mencapai beberapa ratus dolar, dapat menggambarkan suatu organisasi yang kecil secara berarti
• Memperoleh konfigurasi perangkat keras yang besar. DBMS sering memerlukan kapasitas penyimpanan primer dan sekunder yang lebih besar daripada yang diperlukan oleh program aplikasi lain. Juga, kemudahan yang dibuat oleh DBMS dalam mengambil informasi mendorong lebih banyak terminal pemakai yang disertakan dalam konfigurasi daripada jika sebaliknya.
• Mempekerjakan dan mempertahankan staf DBA DBMS memerlukan pengetahuan khusus agar dapat memanfaatkan kemampuan secara penuh. Pengetahuan khusus ini paling baik diberikan oleh pengelola database

B. MACAM-MACAM DBMS (DATBASE MANAGEMENT SYSTEM)
Beberapa software atau perangkat lunak DBMS yang sering digunakan dalam aplikasi program antara lain :
1. MySQL
MySQL merupakan sebuah perangkat lunak system manajemen basis data SQL (bahasa inggris : data management system) atau DNMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis di bawah lisensi GNU General Public Licenci (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL . Tidak seperti Apache yang merupakan software yang dikembangkan oleh komunitas umum, dan cipta untuk code sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia yaitu MySQL AB. MySQL AB memegang penuh hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah : david axmark, allan larsson, dan Michael “monthy widenius.
Kelebihan MySQL antara lain :
1. free (bebas didownload)
2. stabil dan tangguh
3. fleksibel dengan berbagai pemrograman
4. Security yang baik
5. dukungan dari banyak komunitas
6. kemudahan management database
7. mendukung transaksi
8. perkembangan software yang cukup cepat.
2. ORACLE
Sejarah Singkat Oracle
Perusahaan Oracle didirikan pada tahun 1977 oleh tiga orang programmer, Bob Miner, Ed Oates, dan Larry Ellison yang menjabat sebagai CEO (Chief Executive Officer) selama beberapa tahun sampai saat ini. Perusahaan ini berkonsentrasi pada pembuatan database server di mainframe. Kisah sukses Oracle Corp terkait dengan sejarah dan teori database relasional. Teori database relasional diperkenalkan hampir secara simultan oleh Edgar F. Codd (dalam artikelnya yang terkenal Large shared data banks) dan seorang penemu lain yang kurang dikenal, pada tahun 1969. IBM adalah perusahaan pertama yang menerapkan model relasional ini dalam bahasa SQL, dengan produknya DB2. Sayangnya IBM agak ragu akan keampuhan SQL dan model relasional (nantinya akan berpengaruh pada ketertinggalan IBM di pasar database-server sistem operasi Unix dan Windows ).
Larry melihat perkembangan teori model relasional dan implementasi database relasional dalam DB2. Ia yakin bahwa model relational adalah “way of the future” dan memutuskan untuk mengimplementasikan model relasional di produk Oracle. Sebelumnya produk database Oracle memakai model nonrelasional. Oracle menjadi pesaing kuat bagi IBM dalam pasar database server di mainframe, terutama database bermodel relasional.
Sekitar pertengahan tahun 1980an, Larry mendiversifikasi produk Oracle (versi 6.x) keluar mainframe, yakni ke sistem operasi Unix. Selanjutnya tahun 1996 Oracle Corp mendiversifikasi Oracle (versi 7.x) ke sistem operasi Novell Netware, Windows NT, dan Linux (versi 8.x, tahun 1997). Mulai pertengahan tahun 1990an Oracle Corp mulai membuat juga produk-produk nondatabase-server seperti application server (WebDB, OAS), development tools (Oracle Developer, Oracle Designer), dan application suite (Oracle Apps).
Pengertian Oracle
Oracle adalah relational database management system (RDBMS) untuk mengelola informasi secara terbuka, komprehensif dan terintegrasi. Oracle Server menyediakan solusi yang efisien dan efektif karena kemampuannya dalam hal sebagai berikut:
• Dapat bekerja di lingkungan client/server (pemrosesan tersebar)
• Menangani manajemen space dan basis data yang besar
• Mendukung akses data secara simultan
• Performansi pemrosesan transaksi yang tinggi
• Menjamin ketersediaan yang terkontrol
• Lingkungan yang terreplikasi
Database merupakan salah satu komponen dalam teknologi informasi yang mutlak diperlukan oleh semua organisasi yang ingin mempunyai suatu sistem informasi yang terpadu untuk menunjang kegiatan organisasi demi mencapai tujuannya. Karena pentingnya peran database dalam sistem informasi, tidaklah mengherankan bahwa terdapat banyak pilihan software Database Management System (DBMS) dari berbagai vendor baik yang gratis maupun yang komersial. Beberapa contoh DBMS yang populer adalah MySQL, MS SQL Server, Oracle, IBM DB/2, dan PostgreSQL.
Oracle merupakan DBMS yang paling rumit dan paling mahal di dunia, namun banyak orang memiliki kesan yang negatif terhadap Oracle. Keluhan-keluhan yang mereka lontarkan mengenai Oracle antara lain adalah terlalu sulit untuk digunakan, terlalu lambat, terlalu mahal, dan bahkan Oracle dijuluki dengan istilah “ora kelar-kelar” yang berarti “tidak selesai-selesai” dalam bahasa Jawa. Jika dibandingkan dengan MySQL yang bersifat gratis, maka Oracle lebih terlihat tidak kompetitif karena berjalan lebih lambat daripada MySQL meskipun harganya sangat mahal.
Namun yang mereka tidak perhitungkan adalah bahwa Oracle merupakan DBMS yang dirancang khusus untuk organisasi berukuran besar, bukan untuk ukuran kecil dan menengah. Kebutuhan organisasi berukuran besar tidaklah sama dengan organisasi yang kecil atau menengah yang tidak akan berkembang menjadi besar. Organisasi yang berukuran besar membutuhkan fleksibilitas dan skalabilitas agar dapat memenuhi tuntutan akan data dan informasi yang bervolume besar dan terus menerus bertambah besar.
Kelebihan Dan Kekurangan Oracle
Fleksibilitas adalah kemampuan untuk menyesuaikan diri dengan berbagai kebutuhan dan kondisi khusus yang dapat berubah-ubah. Sebagai contoh, organisasi yang besar membutuhkan server yang terdistribusi dan memiliki redundancy sehingga pelayanan bisa diberikan secara cepat dan tidak terganggu jika ada server yang mati. Organisasi tersebut juga mempunyai berbagai macam aplikasi yang dibuat dengan beragam bahasa pemrograman dan berjalan di berbagai platform yang berbeda. Oracle memiliki banyak sekali fitur yang dapat memenuhi tuntutan fleksibilitas dari organisasi besar tersebut. Berbagai fitur tersebut membuat Oracle menjadi DBMS yang rumit dan sulit untuk dipelajari, namun itu adalah harga yang harus dibayar untuk mendapatkan fleksibilitas yang dibutuhkan dalam sistem informasi di organisasi yang berukuran besar.
Skalabilitas mengacu pada kemampuan untuk terus berkembang dengan penambahan sumber daya. Organisasi yang besar harus mampu melakukan transaksi data dalam volume yang besar dan akan terus bertambah besar. Jika dijalankan hanya pada satu server saja, MySQL memang bisa berjalan lebih cepat daripada Oracle. Namun jika satu server sudah tidak bisa lagi menangani beban yang terus bertambah besar, kinerja MySQL mengalami stagnasi karena keterbatasan server tersebut. Namun Oracle mendukung fitur Grid yang dapat mendayagunakan lebih dari satu server serta data storage dengan mudah dan transparan. Hanya dengan menambahkan server atau data storage ke dalam Oracle Grid, maka kinerja dan kapasitas Oracle dapat terus berkembang untuk mengikuti beban kerja yang terus meningkat.
Demikianlah salah satu (atau dua) keunggulan dari Oracle. Tidaklah mengherankan bahwa meskipun Oracle merupakan DBMS yang paling rumit dan paling mahal di dunia, perusahaan-perusahaan besar memilih Oracle dan tidak menggunakan DBMS seperti MySQL yang gratis karena mereka membutuhkan fleksibilitas dan skalabilitas dalam sistem informasi yang mereka gunakan.
3. FIREBIRH
Sejarah Firebird
Firebird adalah salah satu aplikasi RDBMS (Relational Database Management System) yang bersifat open source. Awalnya adalah perusahaan Borland yang sekitar tahun 2000 mengeluarkan versi beta dari aplikasi database-nya InterBase 6.0 dengan sifat open source. Namun entah kenapa tiba-tiba Borland tidak lagi mengeluarkan versi InterBase secara open source, justru kembali ke pola komersial software. Tapi pada saat yang bersamaan programmer-progammer yang tertarik dengan source code InterBase 6.0 tersebut lalu membuat suatu team untuk mengembangkan source code database ini dan kemudian akhirnya diberinama Firebird.
Pengembangan codebase Firebird 2 dimulai pada awal pengembangan Firebird 1, dengan memporting kode Firebird 1 berbasis C ke dalam bahasa C++ dan merupakan pembersihan kode secara besar-besaran. Firebird 1.5 merupakan rilis pertama dari codebase Firebird 2. Pengembangan ini merupakan satu kemajuan signifikan bagi para developer dan seluruh tim dalam project Firebird, namun tentu ini bukan akhir dari tujuan. Dengan dirilisnya Firebird 1.5, pengembangan lebih lanjut difokuskan pada Firebird versi 2.
Pada bulan April 2003, Yayasan Mozilla memutuskan mengganti nama web browser mereka dari ”Phoenix” menjadi ”Firebird”. Keputusan ini ditanggapi dengan serius oleh proyek Firebird Database dengan asumsi bahwa hal tersebut bisa membingungkan user karena dua produk berbeda menggunakan nama yang identik. Protes atas hal ini berlanjut hingga para pengembang Mozilla membuat satu pernyataan yang jelas bahwa nama Firebird dalam kenyataannya adalah ”Mozilla Firebird”. Pernyataan ini juga membuat memperjelas bahwa nama Mozilla Firebird merupakan sebuah ”codename” atas proyek web browser yang tengah dikerjakan oleh Mozilla. Pada tanggal 9 Februari 2004, Mozilla akhirnya mengganti kembali nama browser mereka sebagai Mozilla Firefox, Dengan demikian hal tersebut secara otomatis menghilangkan kebingungan para pengguna.
Firebird dan Interbase. Firebird (juga disebut FirebirdSQL) adalah sistem manajemen basisdata relasional yang menawarkan fitur-fitur yang terdapat dalam standar ANSI SQL-99 dan SQL-2003. RDBMS ini berjalan baik di Linux, Windows, maupun pada sejumlah platform Unix. Firebird ini diarahkan dan di-maintain oleh FirebirdSQL Foundation. Ia merupakan turunan dari Interbase versi open source milik Borland. Karena itulah Interbase dan Firebird sebenarnya mempunyai CORE yang sama karena awalnya sama” dikembangkan oleh Borland.
Namun dalam perkembangannya, Interbase yang komersial di-bundle oleh Borland menjadi Phoenix, sedangkan Firebird adalah interbase yang dikembangkan oleh komunitas Open Source, sehingga menjadikannya sebagai produk Database Server
yang FREE. Kalau dikaitkan dengan support, tentunya jelas beda karena produk komersial dan free. Dalam konsep teknik programmingnya, ada banyak yang sama, namun pengayaan Firebird lebih banyak dan menjadikannya lebih luwes, terutama dalam koneksi client-server (port) dan integritasnya. Modul-modul kode baru ditambahkan pada Firebird dan berlisensi di bawah Initial Developer’s Public License (IDPL), sementara modul-modul aslinya dirilis oleh Inprise berlisensi di bawah InterBase Public License 1.0. Kedua lisensi tersebut merupakan versi modifikasi dari Mozilla Public License 1.1.
Pengguna Firebird
Open source DBMS ini dimotori oleh para developer Interbase 6.x open-source. Jika pernah menggunakan produk-produk RDBMS, seperti Ms-SQL Server, Oracle, DB2, Informix, dan lain-lain, kita tidak akan kesulitan dalam mengenal Firebird. Mengapa Firebird? banyak orang menggunakan produk RDBMS yang sudah populer, dan harganya pun sangat mahal, sehingga banyak yang ingin belajar harus mencari versi ‘bajakan’ dari produk tersebut untuk bisa belajar. Alasannya sederhana, ingin belajar RDBMS berkelas enterprise tetapi tidak usah membayar.
Kalangan-kalangan seperti inilah yang seringkali memanfaatkan Firebird. Produk ini gratis dan berkelas enterprise. Selain itu Firebird juga digunakan para pelaku bisnis, mereka ingin solusi sistem informasi berskala besar (enterprise), namun mereka juga ingin menghindari harga yang sangat mahal dan biaya maintenance yang juga sangat mahal. Produk ini mampu bersaing dengan produk-produk berkelas seperti Ms-SQL Server atau Oracle sekalipun, dalam segala hal fitur, kecepatan, performa, apapun anda menamakannya, Firebird benar-benar bisa dibandingkan,dan yang lebih penting Firebird is totally Free.
Kalau memang Firebird Hebat, berkelas, dan gratis, mengapa Firebird kurang populer saat ini? jawabannya sederhana, Firebird mempunyai developer yang tangguh, support yang tangguh, tetapi Firebird tidak mempunyai marketing yang tangguh.
Kemampuan dan Kelebihan Firebird
Kita bisa melihat berbagai macam aktivitas dan kemampuan Firebird pada situs officialnya yang beralamat di www.firebirdsql.org. Banyak sekali fasilitas menarik yang ditawarkan oleh Firebird (ini bisa dibandingkan dengan fasilitas yang ditawarkan oleh MySQL). Firebird memiliki rata-rata fasilitas yang dimiliki oleh sebuah komersial database misalnya seperti stored procedure, trigger, sistem backup, replikasi dan tools sql yang lengkap. Firebird juga support dengan ANSI SQL yang berarti akan semakin memudahkan Anda dalam proses migrasi antar database platform.
Beberapa kemampuan dari open source DBMS ini antara lain: (1) Firebird support dengan transaksi layaknya pada database komersial lainnya. Sebuah transaksi bisa di-commit atau di-rollback dengan mudah. Bahkan Firebird support dengan savepoint pada suatu transaksi dan kita bisa melakukan rollback kembali ke savepoint yang kita tentukan tadi (ini mirip seperti fasilitas pada Oracle).(2) Firebird menggunakan sintaks standard untuk menciptakan suatu foreign key.(3) Firebird support row level locks, secara default Firebird menggunakan apa yang disebut dengan multi-version
concurrency system. Ini artinya bahwa semua session pada database akan melihat data yang lama sampai data yang baru sudah di-commit ke dalam database. Sebagai alternative untuk locking juga bisa digunakan perintah select… for update with lock.(4) Firebird support stored procedure dan triggers dengan bahasa yang standard sehingga tidak akan membingungkan bagi Anda yang ingin belajar. Triggers pada Firebird mirip seperti yang dijumpai dalam Oracle yaitu menggunakan before atau after insert, update atau delete. Ini berbeda dengan sistem trigger pada Sybase atau MS SQL Server yang menggunakan tabel virtual inserted dan deleted.(5) Firebird bisa melakukan replikasi, solusi untuk replikasi kebanyakan dibuat oleh pihak ketiga, tetapi sebenarnya teknik replikasi ini seperti konsep trigger yang selalu memonitor adanya operasi insert, update atau delete ke dalam database. (6) Firebird support dengan multiple data file, ya, Firebird bisa menggunakan lebih dari satu file sebagai single logic database. Ini sangat berguna bagi para DBA (Database Administrator) untuk mengadministrasi database. (7) Software untuk mengadministrasi mudah didapat karena banyak sekali software untuk mengadministrasi database Firebird, misalnya saja EMS IB Manager, IBConsole, isql, FBManager, Marathon dan banyak lagi yang lainnya. Aplikasi tersebut ada yang komersial atau bahkan ada yang open source. (8) Library connection untuk Firebird yang sudah tersedia ada banyak, ada driver untuk ODBC, JDBC bahkan .NET database provider. Bahkan dari PHP juga sudah disediakan library untuk koneksi ke database Firebird ini. (9) Banyaknya fasilitas support dan maintenance karena banyaknya komunitas Firebird. Di Indonesia sendiri komunitas yang sering menggunakan Firebird biasanya adalah programmer Delphi. Kalau di luar negeri sudah sangat banyak sekali komunitasnya, mulai dari komunitas developer, Firebird architect, Firebird test dan lain sebagainya. Anda bisa mencarinya di Yahoo! Groups www.yahoogroups.com) dengan kata kunci Firebird.
4. Microsoft SQL server 2000
Microsoft SQL Server 2000 adalah perangkat lunak relational database management system (RDBMS) yang didesain untuk melakukan proses manipulasi database berukuran besar dengan berbagai fasilitas. Microsoft SQL Server 2000 merupakan produk andalan Microsoft untuk database server. Kemampuannya dalam manajemen data dan kemudahan dalam pengoperasiannya membuat RDBMS ini menjadi pilihan para database administrator.
DBMS merupakan suatu system perangkat lunak untuk memungkinkan user (pengguna) untuk membuat, memelihara, mengontrol, dan mengakses database secara praktis dan efisien. Dengan DBMS, user akan lebih mudah mengontrol dan mamanipulasi data yang ada. Sedangkan RDBMS atau Relationship Database Management System merupakan salah satu jenis DBMS yang mendukung adanya relationship atau hubungan antar table. RDBMS (Relational Database Management System) adalah perangkat lunak untuk membuat dan mengelola database, sering juga disebut sebagai database engine. Istilah RDBMS, database server-software, dan database engine mengacu ke hal yang sama; sedangkan RDBMS bukanlah database. Beberapa contoh dari RDBMS diantaranya Oracle, Ms SQL Server, MySQL, DB2, Ms Access.
5. Visual Foxpro 6.0
Pada tahun 1984, Fox Software memperkenalkan FoxBase untuk menyaingi dBase II Ashton-Tate. Pada saat itu FoxBase hanyalah perangkat lunak kecil yang berisi bahasa pemrograman dan mesin pengolah data. FoxPro memperkenalkan GUI (Graphical Unit Interface) pada tahun 1989. FoxPro berkembang menjadi Visul FoxPro pada tahun 1995. kemampuan pemrogrman prosural tetap dipertahankan dan dilengkapi dengan pemrograman berorietasi objek. Visual FoxPro 6.0 dilengkapi dengan kemampuan untuk berinteraksi dengan produk desktop dan client/server lain dan juga dapat membangun aplikasi yang berbasis Web. Dengan adanya Visual Studio, FoxPro menjadi anggotanya. Sasaran utama Visual Studio adalah menyediakan alat bantu pemrogrman dan database untuk mengembangka perangkat lunak yang memenuhi tuntutan zaman.
Model data yang digunakan Visual FoxPro yaitu model relasional. Model Relasional merupakan model yang paling sederhana sehingga mudah di pahami oleh pengguna, serta merupakan paling popular saat ini. Model ini menggunakan sekumpulan table berdimensi dua (yang disebut relasi atau table), dengan masing-masing relasi tersusun atas tupel atau baris dan atribut. Relasi dirancang sedemikian rupa sehingga dapat menghilangkan kemubajiran data dan mengunakan kunci tamu untuk berhubungan dengan relasi lain.
6. Database Desktop Paradox
Database desktop merupakan suatu program “Add-Ins”, yaitu program terpisah yang langsung terdapat pada Borland Delphi. Pada database desktop terdapat beberapa DBMS yang terintegrasi di dalamnya antara lain Paradox 7, Paradox 4, Visual dBase, Foxpro, Ms. SQL, Oracle, Ms. Acces, db2 dan interbase. Dari beberapa DBMS tersebut kita akan memilih salah satu yaitu Paradox yang akan dibahas lebih lanjut, khususnya Paradox 7. Dalam Paradox 7 ini, pada 1 file database hanya mengizinkan 1 tabel, berbeda dengan DBMS lain yang mengizinkan beberapa tabel pada 1 file database seperti pada Ms. Acces.
Struktur field pada Paradox 7 :
1. Field Name
Field Name merupakan nama pengenal kolom pada suatu tabel. Terdapat beberapa aturan dalam penulisan field name antara lain :
• Panjang maksimum 25 karakter
• Tidak boleh diawai dengan spasi tapi boleh mengandung spasi
• Unik, artinya tidak ada nama kolom yang sama
• Tidak boleh menggunakan tanda koma (,), tanda pipe (|), dan tanda seru (!)
• Hindari kata-kata yang merupakan perintah SQL
2. Type
Digunakan untuk menetukan tipe data yang dapat ditampung dalam field. Macam-macam tipe data yang sering dipakai dalam Paradox adalah sebagai berikut :

3. Size
Merupakan ukuran dari panjang data yang diizinkan untuk suatu field.
4. Key
Dapat berupa primary key sebagai key yang membedakan untuk setiap baris kolom. Syarat untuk primary key adalah unik, artinya tidaka boleh ada data yang memiliki primary key yang sama.

contoh database my sql